小编Suj*_*dav的帖子

为什么在RecyclerView.Adapter的onBindViewHolder中添加OnClickListener被认为是不好的做法?

我有一个RecyclerView.Adapter类的以下代码,它工作正常:

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.Viewholder> {

    private List<Information> items;
    private int itemLayout;

    public MyAdapter(List<Information> items, int itemLayout){
        this.items = items;
        this.itemLayout = itemLayout;
    }

    @Override
    public Viewholder onCreateViewHolder(ViewGroup parent, int viewType) {
        View v = LayoutInflater.from(parent.getContext()).inflate(itemLayout, parent, false);
        return new Viewholder(v);
    }

    @Override
    public void onBindViewHolder(Viewholder holder, final int position) {
        Information item = items.get(position);
        holder.textView1.setText(item.Title);
        holder.textView2.setText(item.Date);

        holder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(view.getContext(), "Recycle Click" + position, Toast.LENGTH_SHORT).show();
            }
        });

       holder.itemView.setOnLongClickListener(new View.OnLongClickListener() { …
Run Code Online (Sandbox Code Playgroud)

java performance android android-recyclerview

67
推荐指数
4
解决办法
3万
查看次数

标签 统计

android ×1

android-recyclerview ×1

java ×1

performance ×1