public abstract class BaseAdapters extends RecyclerView.Adapter<BaseAdapters.MyViewHolder> implements View.OnClickListener { protected Context parentContext; public int layout_id; protected List<?> dataList = new ArrayList<>(); public class MyViewHolder extends RecyclerView.ViewHolder { MyViewHolder(View view) { super(view); declareViews(view,this); } } @Override public void onClick(View view) { onClickViews(view); } @Override public int getItemViewType(int position) { return position; } @Override public long getItemId(int position) { return position; } @Override public void onBindViewHolder(@NonNull MyViewHolder holder, int i) { bindView(holder, i); } public void notifyList(List<?> filterdNames) { this.dataList = filterdNames; notifyDataSetChanged(); } @Override public int getItemCount() { if (dataList.size() == 0) return 5; else return dataList.size(); } @NonNull @Override public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int i) { View itemView = LayoutInflater.from(parent.getContext()).inflate(layout_id, parent, false); return new MyViewHolder(itemView); } public abstract MyViewHolder bindView(MyViewHolder holder, int position); public abstract void onClickViews(View view); public abstract void declareViews(View view,MyViewHolder holder);}我如何在使用它扩展的子类中的持有人点击每个项目选择时执行。
添加回答
举报
0/150
提交
取消