簡體   English   中英

我想使用 Java 在 Android 中使用 Cloud Firestore 從最新到最舊排序我的數據

[英]I want to order my data from newest to oldest using Cloud Firestore in Android using Java

我想從 Cloud Firestore 對我的數據從最舊到最新進行排序,這是我的代碼:

  private void loadNotesList() {
    firestoreDB.collection("keluhan")
            .get()
            .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                @Override
                public void onComplete(@NonNull Task<QuerySnapshot> task) {
                    if (task.isSuccessful()) {
                        List<keluhanModel> notesList = new ArrayList<>();

                        for (DocumentSnapshot doc : task.getResult()) {
                            keluhanModel note = doc.toObject(keluhanModel.class);
                            note.setId(doc.getId());
                            notesList.add(note);
                        }

                        mAdapter = new adapterKeluhan(notesList, getApplicationContext(), firestoreDB);
                        RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
                        recyclerView.setLayoutManager(mLayoutManager);
                        recyclerView.setItemAnimator(new DefaultItemAnimator());
                        recyclerView.setAdapter(mAdapter);
                    } else {
                        Log.d(TAG, "Error getting documents: ", task.getException());
                    }
                }
            });
}

我曾嘗試使用.orderBy("date", Query.Direction.ASCENDING) 但它沒有做任何事情,它只是我的 Android 應用程序中的一個白頁。

這是我的數據庫:

截圖數據庫

為了能夠按日期對結果進行排序,您應該使用以下查詢:

FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
CollectionReference keluhanRef = rootRef.collection("keluhan");
Query dateQuery = keluhanRef.orderBy("timeStamp", Direction.ASCENDING);
dateQuery.get().addOnCompleteListener(/* ... */);

來電:

.orderBy("date", Query.Direction.ASCENDING)

永遠不會工作,因為您的屬性名稱是timeStamp不是date

暫無
暫無

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

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