{
"Mp6FLLdcSeXpfGPwP5i0ZBNZxd63" : {
"Age" : "20",
"Full name" : "Mike",
"Intent" : "Both",
"Reward" : "Nothing ",
"Variablex" : "one name",
"imageuri" : "images/Mp6FLLdcSeXpfGPwP5i0ZBNZxd63.jpeg"
},
"fWJcCPF16dUMKn1Sxz01VjF9Kgq2" : {
"Age" : "19",
"Full name" : "Other guy",
"Intent" : "Looking for help",
"Reward" : "nothing ",
"Variablex" : "one name",
"imageuri" : "images/fWJcCPF16dUMKn1Sxz01VjF9Kgq2"
}
}
Это моя база данных.Я хочу получить всех пользователей с одинаковой переменной x.Но я хочу только идентификатор, родительский узел.Я хочу в основном построить массив, который содержит все идентификаторы пользователей, чьи дочерние значения variablex одинаковы.А затем используйте этот массив для вызова одного пользователя за раз, получения идентификатора, выполнения других задач с ним и т. Д.
public void othershit() {
Query qname3 = mDatabase.child("Variablex").orderByChild("Variablex").equalTo(userinput);
qname3.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
GenericTypeIndicator<List<String>> t = new GenericTypeIndicator<>();
List users = dataSnapshot.getValue(t);
textView8.setText(users.get(0).toString());
}
Это вызывается кнопкой, но каждый раз происходит сбой.Также у меня есть три пользователя с той же переменнойx.Структура та же самая, это немного устаревшая версия моей базы данных, но по сути она такая же.