Reputation: 128
Given below is my Firebase Schema:
Book {
Book-1: {title, author}
Book-2: {title, author}
Book-3: {title, author}
Book-4: {title, author}
}
I have listed them in RecyclerView and populating through FirebaseRecyclerAdapter. The code for the same is given below:
final DatabaseReference ref = FirebaseDatabase.getInstance().getReference("Book");
firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Book, BookListHolder>(
Book.class,
R.layout.simple_book_vertical_list,
BookListHolder.class,
ref) {
@Override
protected void populateViewHolder(BookListHolder viewHolder, Book model, int position) {
viewHolder.setBookTitle(model.getTitle());
viewHolder.setBookAuthor(model.getAuthor());
}
};
Now, after clicking the view, I want to show the data from the view that is clicked, i.e. their title and author.
What do I have to do?
Upvotes: 0
Views: 429
Reputation: 14612
Set on click listener:
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
ViewHolder viewHolder = super.onCreateViewHolder(parent, viewType);
viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String key = firebaseRecyclerAdapter.getRef(mRecycler.getChildLayoutPosition(v)).getKey();
// do your magic here
}
});
return viewHolder;
}
Upvotes: 1