我进行了很多搜索,我所做的是创建一个项目列表,其中包含简单的数字并具有选中和未选中的复选框,因此当我快速点击列表时,它会崩溃 并生成 ArrayIndexOutOfBound Exception
所以我不知道我做错了什么
这是我的代码
适配器类
class SingleListItemHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
private TextView mItemDate, mFontSizeCategory;
private ImageView isChecked, isTrack, isUnChecked;
private int fontSize = 13;
SingleListItemHolder(View v) {
super(v);
mFontSizeCategory = (TextView) v.findViewById(R.id.tv_font_size_category);
mItemDate = (TextView) v.findViewById(R.id.tv_recycler_view_list_header);
isChecked = (ImageView) v.findViewById(R.id.iv_recycler_view_list_item_selected);
isUnChecked = (ImageView) v.findViewById(R.id.iv_recycler_view_list_item_unselected);
isTrack = (ImageView) v.findViewById(R.id.iv_track);
v.setOnClickListener(this);
this.setIsRecyclable(false);
}
@Override
public void onClick(View v) {
mSingleItemListModels.get(pos).setSelected(false);
notifyItemChanged(pos, mSingleItemListModels.get(pos));
pos = getAdapterPosition();
mSingleItemListModels.get(pos).setSelected(true);
notifyItemChanged(pos, mSingleItemListModels.get(pos));
}
最佳答案
pos = getAdapterPosition();
移到上面
mSingleItemListModels.get(pos).setSelected(false);
关于Android:Recycler 查看项目快速单击它会使应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46566708/