我有一个不知道该怎么做的问题 当该人使用复选框时,将鸟列表添加为书签。
我将数据实时存储在Firebase数据库中的回收视图中,我想通过复选框添加该功能,用户可以将其添加到我的收藏夹中,当我添加它时,我添加的鸟是另一种回收概念中的补给。
非常感谢那些回答我的人
MainActivity
公共类Alto_de_san_miguel扩展了AppCompatActivity {
LinearLayoutManager mlinearLayoutManager;
RecyclerView mrecyclerview;
FirebaseDatabase mfirebaseDatabase;
DatabaseReference mdatabaseReference;
FirebaseRecyclerAdapter<Model, ViewHolder> firebaseRecyclerAdapter;
FirebaseRecyclerOptions<Model> options;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.alto_de_san_miguel);
mlinearLayoutManager = new LinearLayoutManager(this);
mlinearLayoutManager.setReverseLayout(true);
mlinearLayoutManager.setStackFromEnd(true);
mrecyclerview = findViewById(R.id.reciclerview_san_miguel);
mfirebaseDatabase = FirebaseDatabase.getInstance();
mdatabaseReference = mfirebaseDatabase.getReference("san_miguel");
show_san_miguel();
}
private void show_san_miguel() {
options = new FirebaseRecyclerOptions.Builder<Model>().setQuery(mdatabaseReference,Model.class).build();
firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Model, ViewHolder>(options) {
@Override
protected void onBindViewHolder(@NonNull ViewHolder holder, int position, @NonNull Model model) {
holder.setDatails(getApplicationContext(), model.getTitle(), model.getImage(), model.getDescription());
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int i) {
View itemview = LayoutInflater.from(parent.getContext()).inflate(R.layout.fila_san_miguel, parent, false);
ViewHolder viewHolder = new ViewHolder(itemview);
viewHolder.setOnClickListener(new ViewHolder.ClickListener() {
@Override
public void onItemClick(View view, int position) {
}
@Override
public void onItemLongClick(View view, int position) {
}
});
return viewHolder;
}
};
mrecyclerview.setLayoutManager(mlinearLayoutManager);
firebaseRecyclerAdapter.startListening();
mrecyclerview.setAdapter(firebaseRecyclerAdapter);
}
@Override
protected void onStart() {
super.onStart();
if(firebaseRecyclerAdapter != null){
firebaseRecyclerAdapter.startListening();
}
}
}
DATA ViewHolder 公共类ViewHolder扩展了RecyclerView.ViewHolder {
CheckBox favorito1;
FirebaseDatabase mfirebaseDatabase;
DatabaseReference mdatabaseReference;
View mView;
public ViewHolder(@NonNull View itemView) {
super(itemView);
mView = itemView;
mfirebaseDatabase = FirebaseDatabase.getInstance();
mdatabaseReference = mfirebaseDatabase.getReference();
favorito1 = itemView.findViewById(R.id.san_miguel_favorite);
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mClickListener.onItemClick(view,getAdapterPosition());
}
});
itemView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
mClickListener.onItemLongClick(view,getAdapterPosition());
return true;
}
});
}
public void setDatails(Context ctx, String title, String image, String description) {
TextView mTitletv = mView.findViewById(R.id.rtitleTv);
ImageView mimageIv = mView.findViewById(R.id.rImageView);
TextView mDetailtv = mView.findViewById(R.id.san_miguel_description);
Picasso.get().load(image).into(mimageIv);
mDetailtv.setText(description);
}
private ViewHolder.ClickListener mClickListener;
public interface ClickListener{
void onItemClick(View view, int position);
void onItemLongClick(View view, int position);
}
public void setOnClickListener (ViewHolder.ClickListener clickListener){
mClickListener = clickListener;
}
} 资料模型 公共类模型{
private String id;
私有字符串标题,图像,描述;
public Model(){}
public Model(String id, String title, String image, String description) {
this.id = id;
this.title = title;
this.image = image;
this.description = description;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}