我试图通过用户的唯一ID来查询事件,但它不会返回任何内容。这是我的查询代码:
Query events = mDatabaseEvents.orderByValue().equalTo("user1");
这是我的Firebase数据库结构:
events: {
-event1: {
1: user1,
2: user2,
3: user3,
},
-event2: {
1: user4,
2: user5,
3: user1,
},
我认为它无法正常工作,因为数据是通过散列图设置的,因此“user1”可能并不总是在每个事件的同一位置。我该如何解决这个问题呢?感谢
答案 0 :(得分:0)
您需要添加“addValueEventListener”才能实际获取数据。以下是“orderByKey”的示例,我认为几乎没有变化:
Query query = locationComment.orderByKey();
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.getValue() == null) {
return;
}
data.clear();
for (DataSnapshot child : dataSnapshot.getChildren()) {
...
}
adapter.notifyDataSetChanged();
}
您可以在此处查看更多信息:https://stackoverflow.com/a/42430304/5309996