从Firebase获取特定类别的数据

时间:2018-07-18 15:58:47

标签: java android firebase firebase-realtime-database

我想对Firebase实时数据库中的数据进行分类,然后按类别选择它们以显示在我的android视图的不同部分中,但是我不知道从哪里开始。我是Firebase的新手,我只知道如何提取数据,推送到Firebase数据库并显示获取的所有数据。

我的问题是:这可能吗?如果是,我该怎么做? 谢谢

1 个答案:

答案 0 :(得分:5)

如果您有此数据库:

Animals
   randomId
       name: dog
       category: mammal
   randomId
       name: snake
       category: reptile
   randomId
       name: elephants
       category: mammal

然后您可以按类别查询:

DatabaseReference ref=FirebaseDatabase.getInstance().getReference("Animals");
Query query=ref.orderByChild("category").equalTo("mammal");

 query.addListenerForSingleValueEvent(new ValueEventListener() {
   @Override
public void onDataChange(DataSnapshot dataSnapshot) {
  for(DataSnapshot datas: dataSnapshot.getChildren()){
     String name=datas.child("name").getValue().toString();
    }
  }
   @Override
public void onCancelled(DatabaseError databaseError) {
     }
  });

这样,您将检索类别等于哺乳动物的所有名称。

也请在此处检查:

https://firebase.google.com/docs/database/android/lists-of-data