Java 生孩子';的名称以及Firebase数据库中的值
在我的Firebase数据库中,我有如下数据:Java 生孩子';的名称以及Firebase数据库中的值,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,在我的Firebase数据库中,我有如下数据: paidRecord[ John Smith: UNPAID Bill Smith: PAID Mary Smith: UNPAID ] 我正在尝试在我的应用程序中创建一个字符串,显示所有人的付费状态。目前,我所拥有的只是一个显示“未付”的字符串,但我需要的是同时显示用户名 以下是函数: private void checkPaidStatus(){ paidString = ""; Firebase
paidRecord[
John Smith: UNPAID
Bill Smith: PAID
Mary Smith: UNPAID
]
我正在尝试在我的应用程序中创建一个字符串,显示所有人的付费状态。目前,我所拥有的只是一个显示“未付”的字符串,但我需要的是同时显示用户名
以下是函数:
private void checkPaidStatus(){
paidString = "";
FirebaseDatabase.getInstance().getReference("Flats").child(flatID).child("Bills").child(itemSelected).child("paidRecord").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot != null){
Iterator<DataSnapshot> iterable = dataSnapshot.getChildren().iterator();
//this is the bit that needs to be changed to return properly xd good luck
for (Iterator<DataSnapshot> it = iterable; it.hasNext();){
DataSnapshot dataSnapshot1 = it.next();
paidString = paidString + "new" + dataSnapshot1.getValue(String.class);
textViewPaidStatus.setText(paidString);
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
private void checkPaidStatus(){
paidString=“”;
FirebaseDatabase.getInstance().getReference(“Flats”).child(flatID).child(“Bills”).child(itemSelected).child(“paidRecord”).addListenerForSingleValueEvent(新值EventListener()){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
if(dataSnapshot!=null){
迭代器iterable=dataSnapshot.getChildren().Iterator();
//这是需要更改的位,以正确返回xd好运
for(迭代器it=iterable;it.hasNext();){
DataSnapshot dataSnapshot1=it.next();
paidString=paidString+“new”+dataSnapshot1.getValue(String.class);
textViewPaidStatus.setText(paidString);
}
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});
}
那么,Firebase数据库上是否有方法不仅返回分配给键的值,还返回键本身呢?实际上,您的键也可以在子DataSnapshot中使用,只是您需要像下面这样
DataSnapshot dataSnapshot1 = it.next();
paidString = paidString + "new" + dataSnapshot1.getValue(String.class);
textViewPaidStatus.setText(paidString);
String mStrkey=dataSnapshot1.getKey()
你能显示你当前的代码吗?“寻求调试帮助的问题(“此代码为什么不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现这些问题所需的最短代码。没有明确问题说明的问题对其他读者没有用。请参阅:“该键可从
DataSnapshot.getKey()获得。”
传递到您的回调中。正如frank所说,请使用您试图获取值的代码更新您的问题,我们将为您提供帮助