How can I select only one checkbox in Recyclerview and notifydataset changed

前端 未结 5 1157
没有蜡笔的小新
没有蜡笔的小新 2020-12-09 14:14

In my code I have create recyclerview with check box and default one item selected already. now I want when select other item checkbox so deselect all other items mean one i

5条回答
  •  孤城傲影
    2020-12-09 14:46

    You can use below code; it will surely help you guys,

    int selectedPosition=0;
    
     if (selectedPosition == position) {
                holder.itemView.setSelected(true); //using selector drawable
    
    
                GradientDrawable drawable = (GradientDrawable) holder.ll_portal.getBackground();
                drawable.setColor(getResources().getColor(R.color.darkorange));
                holder.tvPortalName.setTextColor(Color.parseColor("#FFFFFF"));
    
    
            } else {
                holder.itemView.setSelected(false);
                GradientDrawable drawable = (GradientDrawable) holder.ll_portal.getBackground();
                drawable.setColor(getResources().getColor(R.color.white));
                holder.tvPortalName.setTextColor(Color.parseColor("#000000"));
            }
    
            final int finalPosition = position;
            holder.ll_portal.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    totalDineInOrder= String.valueOf(gallaryModels.get(position).getDineInTotalOrder());
                    totalPickupOrder= String.valueOf(gallaryModels.get(position).getPickupTotalOrder());
                    selectedPosition= finalPosition;
                    notifyDataSetChanged();
                }
            });
    

提交回复
热议问题