2 回答

TA貢獻2019條經驗 獲得超9個贊
訪問您所獲取數據的順序是不正確的。如果沒有其他幫助,您可以嘗試這種方式。
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
rootRef.child("Names").orderByChild("Date").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for(DataSnapshot ds: dataSnapshot.getChildren()){
date.add(ds.getValue(String.class));
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
//Also as you've told that code is not working, please tell, what exactly is not working

TA貢獻1155條經驗 獲得超0個贊
firebase 引用錯誤,您應該從頂部節點轉到日期節點。
改變這個:
firebaseDatabase = FirebaseDatabase.getInstance().getReference().child("Date");
進入這個:
firebaseDatabase = FirebaseDatabase.getInstance().getReference().child("Name");
firebaseDatabase.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for(DataSnapshot datas: dataSnapshot.getChildren()){
date.add(datas.child("Date").getValue().toString());
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
由于您想獲取所有內容, Date因此將 firebase 引用放在節點上Name并在名稱中循環,以便能夠檢索所有日期。
如果要獲取某個用戶示例的日期Ravi,則不需要循環,可以執行以下操作:
firebaseDatabase = FirebaseDatabase.getInstance().getReference().child("Name").child("Ravi").child("Date");
firebaseDatabase.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
date.add(dataSnapshot.getValue().toString());
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
添加回答
舉報