我试图在我的Firebase数据库上运行查询,以便仅返回那些timestamp =日期选择器中指定的日期的结果(请参阅应用程序图片),我希望每当我按下View records按钮时都运行此查询
[![Firebase] [3]] [3]
目前,我可以将所有对象打印到回收器视图中,但是,当尝试运行查询时,它不会产生任何结果,没有错误并且在调试中没有错误
如果我需要提供更多详细信息,请告诉我
[3]:https://i.stack.imgur.com/d2uu2.png
最佳答案
要解决此问题,请更改以下代码行:
options = new FirebaseRecyclerOptions.Builder<Records>().setQuery(databaseReference, Records.class).build();
至
options = new FirebaseRecyclerOptions.Builder<Records>().setQuery(query, Records.class).build();
// ^ ^
您必须将
setQuery()
对象而不是query
对象传递给databaseReference
方法,因为查询对象实际上是在过滤您的数据。编辑:
根据您的评论:
是的,在硬编码时可以正常工作,但是在将文本视图转换为字符串时无法正常工作
这意味着传递查询对象可以解决问题,但问题仍然在于如何将数据转换为String。要解决此问题,请确保
date
的String表示形式为:04-02-2017
,并且将解决您的问题。