android - 是否可以过滤 Firestore Recyclerview(无第三方应用程序)?
问题描述
实际上,我做了一个返回多个对象的第一个查询。
正如我们可以使用标准的 recyclerView 一样,我想在创建视图后使用 EditText 动态过滤这些对象,并动态更新视图。
例如,如果我的第一个查询返回并显示 10 个对象,则用户将能够通过使用 EditText 发出请求,在 10 个对象中搜索一个对象。视图将仅显示此对象。
Query query = collectionRef.whereArrayContains("customerNearMe", getCurrentUser().getUid());
private void sendToAdapter(Query query) {
FirestoreRecyclerOptions<Restaurant> options = new FirestoreRecyclerOptions.Builder<Restaurant>()
.setQuery(query, Restaurant.class)
.build();
adapter = new RestaurantAdapter(options);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
recyclerView.setAdapter(adapter);
DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(recyclerView.getContext(), DividerItemDecoration.VERTICAL);
recyclerView.addItemDecoration(new SimpleItemDecorator(getContext()));
adapter.notifyDataSetChanged();
}
@Override
public void onStart() {
super.onStart();
adapter.startListening();
}
@Override
public void onDestroy() {
super.onDestroy();
adapter.stopListening();
}
实际上,我知道如何使用简单的 RecyclerView
private void filter(String text) {
ArrayList<ExampleItem> filteredList = new ArrayList<>();
for (ExampleItem item : mExampleList) {
if (item.getText1().toLowerCase().contains(text.toLowerCase())) {
filteredList.add(item);
}
}
mAdapter.filterList(filteredList);
}
但我是 Firestore 的新手。
解决方案
推荐阅读
- testing - 用 jest 测试 redux-saga 捕获错误处理
- nginx - OpenWhisk Ngnix Pod CrashLoopBackOff
- c# - 反序列化具有更多节点的字符串,然后键入将在 c# 中返回的类型
- python - 将基于类的视图中的主键保存到另一个视图(django)
- r - 具有唯一子组名称的组的条形图
- php - 如何在mysql insert语句中将php变量与字符串连接起来
- javascript - Codeigniter:如何将数据库结果转换为 JSON
- python-3.x - 网页抓取和超时错误处理
- python - 将错误从 Python 返回到 PowerShell?
- c - printf 的参数用作格式说明符的参数