Сохраните родительский ключ из базы данных в arraylist и распечатайте - PullRequest
1 голос
/ 11 июня 2019

Sample

Ключи, показанные на изображении, являются UID пользователя.Я пытаюсь сохранить эти ключи в arraylist и проверить, нет ли UID currentuser в arraylist, но результат не выполнен, так как println ничего не показывает.

final FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
database= FirebaseDatabase.getInstance().getReference().child("Dentist");
        database.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                for (DataSnapshot child: dataSnapshot.getChildren())
                {
                    list1.add(child.getKey());
                }
            }
            @Override
            public void onCancelled(DatabaseError databaseError) {
            }
        });
        for (int i = 0; i < list1.size(); i++) {
            System.out.println(list1.get(i));
        }
if (!list1.contains(user.getUid())) {
//do something
}

1 Ответ

0 голосов
/ 11 июня 2019

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

final FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
database= FirebaseDatabase.getInstance().getReference().child("Dentist");
        database.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                for (DataSnapshot child: dataSnapshot.getChildren())
                {
                   list1.add(child.getKey());
                }
                for (int i = 0; i < list1.size(); i++) {
                   System.out.println(list1.get(i));
               }
               if (!list1.contains(user.getUid())) {
                  //do something
               }
            }
            @Override
            public void onCancelled(DatabaseError databaseError) {
            }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...