Reputation: 2216
I try to filter the database of Firebase, but I got this error:
Error:(26, 107) error: incompatible types: Query cannot be converted to DatabaseReference
This is my code. It's running well if I remove .startAt("test")
:
DatabaseReference listRef = FirebaseDatabase.getInstance()
.getReference("question-answer")
.startAt("test");`
I'm using FirebaseRecycleViewAdapter and I want to filter that view. How to achieve this?
Upvotes: 1
Views: 1078
Reputation: 364770
Error:(26, 107) error: incompatible types: Query cannot be converted to DatabaseReference
You can check in the official documentation.
The method startAt
returns a Query
not a DatabaseReference
.
You have to use:
Query listRef = FirebaseDatabase.getInstance()
.getReference("question-answer")
.startAt("test");
You can use your RecyclerView
by passing a Query
instead of a normal DatabaseReference
.
Query listRef = ....;
mAdapter = new FirebaseRecyclerAdapter<XX, XXViewHolder>(XX.class,
R.layout.xxx_recycler_item, EXXViewHolder.class, listRef) { ... }
Upvotes: 3
Reputation: 2635
Just use
Query query = FirebaseDatabase.getInstance()
.getReference("question-answer")
.startAt("test");
query is a parameter for the recycleradapter so it will work because DatabaseReference extends Query
Upvotes: 2