我有以下Firebase数据库:
我想要做的就是显示属于特定用户的所有列表。在这种情况下,我想显示属于gmail @ gmail,com用户的列表aaa
和列表bbb
。有了这个查询:
databaseReference = FirebaseDatabase.getInstance().getReference();
Query query = databaseReference.child("Lists").orderByChild("ListName");
firebaseListAdapter = new FirebaseListAdapter<ListModel>(this, ListModel.class, android.R.layout.simple_list_item_1, query) {
@Override
protected void populateView(View v, ListModel slm, int position) {
((TextView)v.findViewById(android.R.id.text1)).setText(slm.getListName());
}
};
我实现显示所有列表,但我想只显示属于单个用户的列表,其值为true
。我怎么能这样做?
提前致谢!
答案 0 :(得分:1)
有两种方法可以实现此行为。
Query query = DatabaseRef.getReference().child("Lists").orderByChild("Users").equals("gmail@gmail,com")
然后将ChildEventListener添加到此引用
解释 \的Gmail @ gmail的,COM \ listName aaa \ listName bbb
您可以从以下参考中获取此结构中的数据:
Query query = DatabaseRef.getInstance().child("Lists").child("gmail@gmail,com")
然后使用ref对象添加ChildEventListener侦听器。
希望这对你有用..
---编辑---- 试试这个:
FirebaseDatabase firebaseDatabase = FirebaseDatabase.getInstance();
DatabaseReference ref = firebaseDatabase.getReference().child("Lists").orderByChild("Users").equalTo("gmail@gmail,com");
ref.addChildEventListener(New ChildEventListener......);