簡體   English   中英

RecyclerView OnClick方法

[英]RecyclerView OnClick Method

我實現了RecyclerView List,每當我單擊列表中的某個內容時,應用程序就會崩潰。

這是代碼:

public void onBindViewHolder(MyViewHolder holder, final int position) {
    holder.mTextView.setText(mDataset[position]);
    holder.mCardView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            final Intent intent;
            switch (getAdapterPostion()) {
                case 0:
                    intent =  new Intent(context, TestingActivity.class);
                    break;

                case 1:
                    intent =  new Intent(context, TestingActivity.class);

                    break;

                case 2:
                    intent =  new Intent(context, TestingActivity.class);
                    break;

                case 3:
                    intent =  new Intent(context, TestingActivity.class);
                    break;

                case 4:
                    intent =  new Intent(context, TestingActivity.class);
                    break;

                case 5:
                    intent =  new Intent(context, TestingActivity.class);
                    break;

                default:
                    intent =  new Intent(context, Timeline.class);
                    break;
            }
            context.startActivity(intent);
        }
    });
}

private int getAdapterPostion() {
    return 0;
}

請改使用holder.getAdapterPosition()。 並將點擊監聽器放在viewHolder中,而不是在BindViewHolder中。 每當我們調用notifyDatasetChanged()以及向下滾動時,BindViewHolder都會調用。 它會影響應用程序的性能。 讓我知道任何查詢。 祝一切順利。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM