簡體   English   中英

如何通過比較android中的值來顯示列表視圖

[英]How to display a listview by comparing values in android

我有一個具有列表視圖的應用程序。 當前,它顯示了我輸入數據庫的所有數據。 我想通過比較當前時間和我輸入到數據庫的時間來顯示Firebase數據庫中的數據。

這是代碼

 lv = findViewById(R.id.listView);
        Query query = FirebaseDatabase.getInstance().getReference().child("Details");
        FirebaseListOptions<Member> options = new FirebaseListOptions.Builder<Member>()
                .setLayout(R.layout.list_view_item)
                .setQuery(query,Member.class)
                .build();
        adapter = new FirebaseListAdapter(options) {
            @Override
            protected void populateView(@NonNull View v, @NonNull Object model, int position) {
                check();

                TextView loc = v.findViewById(R.id.locs);
                TextView des = v.findViewById(R.id.dests);
                TextView bus = v.findViewById(R.id.busn);
                TextView tim = v.findViewById(R.id.time);

                Member db = (Member) model;
                loc.setText(db.getLocation().toString());
                des.setText(db.getDestination().toString());
                bus.setText(db.getBusname().toString());
                tim.setText(db.getTime().toString());
            }
        };
        lv.setAdapter(adapter);

}

 @Override
    protected void onStart() {
        super.onStart();
        adapter.startListening();
    }


@Override
    protected void onStop() {
        super.onStop();
        adapter.stopListening();
}

如有任何錯誤,請指導我,我是Android新手。 提前致謝 :)

您正在尋找Firebase數據庫查詢 ,該查詢可讓您過濾Firebase服務器上的數據。 假設您有一個字段,其中包含每個節點在詳細信息下的時間戳(自1970年1月1日以來的毫秒數)。 您可以從一到兩周前獲得每個子節點,方法是:

Query query = FirebaseDatabase.getInstance().getReference().child("Details");

long oneWeekInMillis = 7 * 24 * 60 * 60 * 1000;
long oneWeekAgo = System.currentTimestampMillis() - oneWeekInMillis;
long twoWeeksAgo = oneWeekAgo - oneWeekInMillis;

query = query.orderByChild(timestamp).startAt(twoWeeksAgo).endAt(oneWeekAgo);

就像您已經在做的一樣,您可以將此查詢傳遞給適配器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM