2 回答
TA贡献1818条经验 获得超3个赞
像这样试试
Query myTopPostsQuery = mAreasNodeReference.child("Areas").orderByChild("cityName").equalTo("City_1");
myTopPostsQuery.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot.getValue()!=null){
for(DataSnapshot snapshot:dataSnapshot.getChildren()){
String AreaName=snapshot.getKey();
Log.d(TAG,"AreaName "+AreaName)
String germanName = snapshot.child("GermanName").getValue(String.class);
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
TA贡献1828条经验 获得超6个赞
您可以尝试以下方法:
DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("Areas");
databaseReference.orderByChild("cityName").equalTo("City_1").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()){
String key = ds.getKey();
String germanName = ds.child("GermanName").getValue(String.class);
String englishName = ds.child("EnglishName").getValue(String.class);
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
在这里,您dataSnapshot位于节点Areas,然后您在直接子代中循环,它将根据查询检索数据。
添加回答
举报
