Получение данных из Firestore в Listview

я новичок, так что не ругайтесь сильно, в Cloud Firestore имеется коллекция Zakazy, и много документов, названий которых я не знаю, но получаю список документов вот так:

FirebaseFirestore MyDb = FirebaseFirestore.getInstance();
    MyDb.collection("Zakazy").get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
        @Override
        public void onComplete(@NonNull Task<QuerySnapshot> task) {
            if (task.isSuccessful()) {
                List<String> list = new ArrayList<>();
                for (QueryDocumentSnapshot document : task.getResult()) {
                    list.add(document.getId());
                    spisok = list.toString();
                    list.clear();
                    spisok = spisok.replaceAll("\\[", "");
                    spisok = spisok.replaceAll("\\]", "");

потом пытаюсь прочитать данные с уже известным именем документа(их много) и запихнуть все это в listview

FirebaseFirestore MyDb = FirebaseFirestore.getInstance();
                    DocumentReference docRef = MyDb.collection("Zakazy").document(spisok);
                    docRef.addSnapshotListener(new EventListener<DocumentSnapshot>() {

                        @Override
                        public void onEvent(@Nullable DocumentSnapshot snapshot,
                                            @Nullable FirebaseFirestoreException e) {
                            if (e != null) {

                                return;
                            }

                            if (snapshot != null && snapshot.exists()) {


                                UsesData = snapshot.getData().toString();
                                UsesData = UsesData.replaceAll("\\{", "");
                                UsesData = UsesData.replaceAll("\\}", "");
                                UsesData = UsesData.replaceAll("=", "");
                                names = UsesData.split(",");
                                ListView liststat = (ListView) findViewById(R.id.list_of_zayavka);
                                ArrayAdapter<String> adapter = new ArrayAdapter<String>(SpisokZayavok.this, android.R.layout.simple_list_item_1, names);
                                liststat.setAdapter(adapter);
                                adapter.notifyDataSetChanged();
                            }
                        }
                    });
               }
            }
            }
        });

Но вместо того что бы вывести данные со всех документов, выводятся данные с последнего документа

Пожалуйста помогите разобраться с данной бедой и не отправляйте учить основы java


Ответы (0 шт):