2 回答

TA貢獻1865條經驗 獲得超7個贊
要獲取Destination節點下的所有這些對象,您需要DataSnapshot使用如下getChildren()方法迭代對象:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference destinationRef = rootRef.child("Destination");
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String name = ds.child("name").getValue(String.class);
Log.d(TAG, name);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d(TAG, databaseError.getMessage());
}
};
destinationRef.addListenerForSingleValueEvent(valueEventListener);
如果您使用的是模型類,請使用以下代碼:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference destinationRef = rootRef.child("Destination");
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
YourClass yourClass = ds.getValue(YourClass.class);
Log.d(TAG, yourClass.getName());
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d(TAG, databaseError.getMessage());
}
};
destinationRef.addListenerForSingleValueEvent(valueEventListener);
添加回答
舉報