Если вы хотите получить доступ к данным с этих дочерних узлов, вместо использования query
вы можете просто использовать DatabaseReference
, а с помощью orderByChild()
и equalTo()
можно получить доступ к данным, имеющим только то значение, которое вы хотите.
В коде это выглядит примерно так:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference().child("Tehsil");
// specificTID is the value which you want to compare to the value stored in database
rootRef.orderByChild("TID").equalTo(specificTID).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for(DataSnapshot data: dataSnapshot.getChildren()){
// use array1.add to store value in your arrayList
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
Теперь вам нужно обновить значение до ArrayAdapter
и установить его на listView
, чтобы иметь возможность отображать данные.
ArrayAdapter adapter = new ArrayAdapter(Main2Activity.this, android.R.layout.simple_list_item_1, array);
listView.setAdapter(adapter);
Вы можете сделать это с обоими детьми и сохранить значения в разных массивах.Вы также можете использовать разные listViews
для отображения данных.