Как получить все дочерние узлы из базы данных Firebase? - PullRequest
0 голосов
/ 25 декабря 2018

это моя структура.Я пытаюсь закодировать табло для моего приложения, но не могу получить имя пользователя и оценку.я хочу сохранить это имя пользователя и счет в отсортированном списке, чтобы получить топ 10.

это мой код: я только получаю имена пользователей.

databaseReference = FirebaseDatabase.getInstance().getReference("Users");
    databaseReference.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                Userlist = new ArrayList<String>();
                // Result will be holded Here

                for (DataSnapshot dsp : dataSnapshot.getChildren()) {
                    for (DataSnapshot as : dataSnapshot.getChildren()) {
                        String userkey= as.getKey();
                        Userlist.add(userkey); //add result into array list

                    }
                }

                un.setText(Userlist.get(2));

            }

        @Override
        public void onCancelled(DatabaseError error) {

        }
    });

enter image description here

1 Ответ

0 голосов
/ 25 декабря 2018

Попробуйте выполнить следующее:

databaseReference = FirebaseDatabase.getInstance().getReference("Users");
databaseReference.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            Userlist = new ArrayList<String>();
            // Result will be holded Here

            for (DataSnapshot dsp : dataSnapshot.getChildren()) {
                    String userkey  = dsp.getKey();
                    String scores   = dsp.child("scorehigh").getValue().toString();
                    Userlist.add(userkey); //add result into array list
                }
            }

            un.setText(Userlist.get(2));

        }

    @Override
    public void onCancelled(DatabaseError error) {

    }
});

Ссылка находится на Users, затем вам нужно дважды выполнить цикл, чтобы получить доступ к атрибутам scorehigh и username

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...