android - 有没有办法使用 Firebase UI RecyclerView 过滤数据?
问题描述
我正在使用 Firebase UI FirestorePagingAdapter,我有一个集合posts
,我想过滤不是来自当前用户的帖子并按以下顺序排序timestamp
我试过这样做,但我得到不等式错误:
override fun getPostFromLocation(viewLifecycleOwner:LifecycleOwner, location:String) :FirestorePagingOptions<Post>{
val query = firestore.collection(POST_COLLECTION)
.orderBy("timestamp", Query.Direction.DESCENDING)
.whereNotEqualTo("uid",auth.currentUser?.uid)
return FirestorePagingOptions.Builder<Post>()
.setLifecycleOwner(viewLifecycleOwner)
.setQuery(query, pagingConfig, Post::class.java)
.build()
}
有没有办法过滤结果?
解决方案
如果您想使用 Firebase UI 来管理 RecyclerView,则必须使用查询的另一个条件过滤结果。
如果您无法让查询准确返回您想要的内容,您将无法使用 Firebase UI。相反,您将不得不手动执行查询,编写代码来过滤结果,并使用您自己的适配器将它们应用到 RecyclerView。
推荐阅读
- javascript - 启动节点服务器,每天在特定时间加载页面
- c# - 实体框架仅在更新时引发异常 - 无效的对象名称“dbo.BirdBrain.service”
- reactjs - 在路由重定向之前反应保存旧 URL
- r - 如何根据价值将 93 次代表分成 3 组?
- python - Python在数组中转换txt
- javascript - 如何将 .json 文件设置为用于 window.open (javascript) 的变量?
- python - ValueError:形状(2,)和(10,10)未对齐:2(dim 0)!= 10(dim 0)
- reactjs - 焦点在 componentDidUpdate 中有效,但在 componentDidMount 中无效
- python - AWS - boto3 - 如何列出组织下的所有 ORG ID(甚至嵌套)
- selenium - 进程运行后向 selenium 发送新的 url