1. 先看一下效果圖
2. 主要實現(xiàn)思路
2.1. 適配器定義全局變量(點擊的下標)
private int selectNum = -1;
2.2. 點擊事件得到條目的position
holder.llItem.setOnClickListener(new View.OnClickListener() {
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
public void onClick(View view) {
if (listener != null) {
listener.onItemClickListener(position);
}
//點擊進行重新賦值
selectNum = position;
//刷新適配器
notifyDataSetChanged();
}
});
2.3. 對全局定義的變量進行重新賦值 之后刷新適配器
3. 代碼部分
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
public void onBindViewHolder(@NonNull final MyViewHolder holder, final int position) {
holder.mTvTese.setText("測試數(shù)據(jù)" + mTestBeans.get(position).getId());
if (position == selectNum) {
holder.mTvTese.setTextColor(context.getResources().getColor(R.color.colorTest));
holder.mIvTest.setImageDrawable(context.getDrawable(R.drawable.image_select));
} else {
holder.mTvTese.setTextColor(context.getResources().getColor(R.color.color8888));
holder.mIvTest.setImageDrawable(context.getDrawable(R.drawable.image_noselect));
}
holder.llItem.setOnClickListener(new View.OnClickListener() {
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
public void onClick(View view) {
if (listener != null) {
listener.onItemClickListener(position);
}
selectNum = position;
notifyDataSetChanged();
}
});
}
最后編輯于 :
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者