无法转换为 DatabaseReference

Cannot be converted to DatabaseReference

我尝试过滤 Firebase 的数据库,但出现此错误:

Error:(26, 107) error: incompatible types: Query cannot be converted to DatabaseReference

这是我的代码。如果我删除 .startAt("test"):

就很好 运行
DatabaseReference listRef = FirebaseDatabase.getInstance()
   .getReference("question-answer")
   .startAt("test");`

我正在使用 FirebaseRecycleViewAdapter,我想过滤该视图。如何实现?

只需使用

Query query  = FirebaseDatabase.getInstance()
   .getReference("question-answer")
   .startAt("test");

query 是 recycleradapter 的一个参数,所以它可以工作 因为 DatabaseReference 扩展了 Query

Error:(26, 107) error: incompatible types: Query cannot be converted to DatabaseReference

您可以在 official documentation.
中查看 方法startAtreturns一Query not a DatabaseReference.

您必须使用:

Query listRef = FirebaseDatabase.getInstance()
   .getReference("question-answer")
   .startAt("test");

您可以通过传递 Query 而不是正常的 DatabaseReference 来使用您的 RecyclerView

Query listRef = ....;
mAdapter = new FirebaseRecyclerAdapter<XX, XXViewHolder>(XX.class,
            R.layout.xxx_recycler_item, EXXViewHolder.class, listRef) { ... }