如何更新FirebaseRecyclerAdapter的查询

时间:2016-12-01 20:19:25

标签: firebase firebase-realtime-database firebaseui

如果我有Query a,我将其设为FirebaseRecyclerAdapter

然后,我想不断创建新的Query并更新FirebaseRecyclerAdapter

E.G:

query = database.orderByChild("child");
query2 = database.orderByChild("child2"); 
adapter = new FirebaseRecyclerAdapter<...>(...,...,...,query){
   ...
}

现在,3秒后,我正在寻找一种方法来更改查询。与此类似:

adapter.setQuery(query2);

现有方法吗?或者Firebase一如既往地懒得去做这个?

2 个答案:

答案 0 :(得分:0)

Firebase数据库查询是不可变的:您无法更改现有查询的属性。

由于FirebaseUI中的适配器主要是底层数据结构的反映,因此我们还没有添加更改现有适配器查询的选项。

当我创建新查询时,我还创建了一个新的适配器并将 绑定到(列表或回收站)视图。

对于为新查询创建新适配器而言,您在现有适配器下替换查询有什么优势?

答案 1 :(得分:0)

您可以创建一个自定义Adapter类来完成此操作,但它并非完全最佳。参见:https://stackoverflow.com/a/53235783/683658