如何针对RecyclerView正确过滤Android Firebase数据库查询?

时间:2017-02-26 07:50:49

标签: android firebase filter firebase-realtime-database android-recyclerview

我有一份分类食物清单,用户可以将其标记为收藏。

这是一个示例数据库:

{
  "alimentaries" : {
    "chocolate" : {
      "name" : "Chocolate",
      "category" : "sweet"
    },
    "big_tasty" : {
      "name" : "Big Tasty",
      "category" : "meal",
      "users" : {
        "userA" : true
      }
    }
  },
  "users" : {
    "userA" : {
      "name": "James",
      "alimentaries" : {
        "big_tasty" : true
      }
    }
  },
  "categories" : {
    "meal" : {
       "name" : "Meal",
       "alimentaries" : {
         "big_tasty" : true
       }
    },
    "sweet" : {
       "name" : "Sweet",
       "alimentaries" : {
         "chocoalate" : true
       }
    }
  }
}

正常完整列表的查询是:

Query ref = mDatabaseReference.child("alimentaries").orderByChild("name");

我需要显示所有食物的列表,使用FirebaseRecyclerView没问题。

但现在我需要:

  1. 按所选类别过滤正常列表
  2. 显示另一个列表,其中仅包含当前用户(userA)标记为收藏的食物,也可按类别过滤
  3. 两个列表都需要通过食物名称属性进行排序。

0 个答案:

没有答案