Android 从firebase检索所有值并将其放入TextView
我想检索Dosa和Dosa2并将其放入文本视图中。 下面是我尝试过的代码,但我只能检索Dosa2Android 从firebase检索所有值并将其放入TextView,android,firebase,firebase-realtime-database,textview,Android,Firebase,Firebase Realtime Database,Textview,我想检索Dosa和Dosa2并将其放入文本视图中。 下面是我尝试过的代码,但我只能检索Dosa2 mMessagesDatabaseReference = mFirebaseDatabase.getReference("messages"); // Attach a listener to read the data at our posts reference mMessagesDatabaseReference.addValueEventListener(new Value
mMessagesDatabaseReference = mFirebaseDatabase.getReference("messages");
// Attach a listener to read the data at our posts reference
mMessagesDatabaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot postSnapshot: dataSnapshot.getChildren()) {
Food food = postSnapshot.getValue(Food.class);
foodnameTextView.setText(food.getFoodname()+"\n");
}}
@Override
public void onCancelled(DatabaseError databaseError) {
System.out.println("The read failed: " + databaseError.getCode());
}
});
因为您每次都在循环中设置textview。请执行以下操作: 在顶部初始化变量并在循环中追加文本,然后将其设置为textview
mMessagesDatabaseReference = mFirebaseDatabase.getReference("messages");
// Attach a listener to read the data at our posts reference
String foodName="";
mMessagesDatabaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot postSnapshot: dataSnapshot.getChildren()) {
Food food = postSnapshot.getValue(Food.class);
foodName+=food.getFoodname()+"\n";
}
foodnameTextView.setText(foodName);
}
@Override
public void onCancelled(DatabaseError databaseError) {
System.out.println("The read failed: " + databaseError.getCode());
}
});
非常感谢,我犯了一个多么愚蠢的错误