如何更新 FirebaseRecyclerAdapter 的查询
How to update a FirebaseRecyclerAdapter's query
如果我有 Query a
,我将其设置为 FirebaseRecyclerAdapter
。
然后,我想不断地创建一个新的Query
并更新FirebaseRecyclerAdapter
。
例如:
query = database.orderByChild("child");
query2 = database.orderByChild("child2");
adapter = new FirebaseRecyclerAdapter<...>(...,...,...,query){
...
}
现在,3 秒后,我正在寻找更改查询的方法。类似这样:
adapter.setQuery(query2);
有现成的方法吗?还是 Firebase 像往常一样懒得做这件事?
Firebase 数据库查询是不可变的:您无法更改现有查询的属性。
由于 FirebaseUI 中的适配器主要是底层数据结构的反映,我们也没有添加更改现有适配器查询的选项。
当我创建一个新查询时,我还创建了一个新适配器并将 that 绑定到(列表或回收器)视图。
与为新查询创建新适配器相比,替换现有适配器下的查询有何优势?
您可以创建自定义适配器 class 来完成此操作,但它并非完全最佳。参见:
如果我有 Query a
,我将其设置为 FirebaseRecyclerAdapter
。
然后,我想不断地创建一个新的Query
并更新FirebaseRecyclerAdapter
。
例如:
query = database.orderByChild("child");
query2 = database.orderByChild("child2");
adapter = new FirebaseRecyclerAdapter<...>(...,...,...,query){
...
}
现在,3 秒后,我正在寻找更改查询的方法。类似这样:
adapter.setQuery(query2);
有现成的方法吗?还是 Firebase 像往常一样懒得做这件事?
Firebase 数据库查询是不可变的:您无法更改现有查询的属性。
由于 FirebaseUI 中的适配器主要是底层数据结构的反映,我们也没有添加更改现有适配器查询的选项。
当我创建一个新查询时,我还创建了一个新适配器并将 that 绑定到(列表或回收器)视图。
与为新查询创建新适配器相比,替换现有适配器下的查询有何优势?
您可以创建自定义适配器 class 来完成此操作,但它并非完全最佳。参见: