2 回答

TA贡献1821条经验 获得超5个赞
在您的适配器中创建一个名为 SelectedPosition 的变量。单击时,将该变量更新为adapterPosition 并重新加载recyclerView。
签到populateViewHolder说:
if selectedPosition == position {
//highlighted
}
else {
//set back to normal
}

TA贡献1846条经验 获得超7个赞
这是我自己的解决方案。
@Override
protected void populateViewHolder(CategoryViewHolder viewHolder, final
Category model, int position) {
viewHolder.category_name.setText(model.getName());
if (position == Common.index) {
viewHolder.category_layout.setSelected(true);
} else {
viewHolder.category_layout.setSelected(false);
}
viewHolder.setItemClickListener(new ItemClickListener() {
@Override
public void onClick(View view, int position, boolean isLongClick) {
Common.index = position;
adapter.notifyDataSetChanged();
}
});
}
};
adapter.notifyDataSetChanged();
listCategory.setAdapter(adapter);
}
我只是使用了一个 Common java 类,问题是用 public static int 索引解决的
添加回答
举报