LRecyclerView
LRecyclerView copied to clipboard
使用自定义的notifyItemRemoved移除item显示不正确
使用版本1.3.2,调用自定义的Adapter的notifyItemRemoved移除一条item后(第一次的移除是正确的),通过LRecyclerView的onItemClick的回调中的position不准确,我曾试过,自己在自定义的Adapter中的onBindViewHolder中添加条目点击监听,但是同样的拿到的position也是不准确。
还有提个小建议,每次的新版本发布,麻烦写上更新了什么内容,我查阅了1.4.2的更新只看到fix bug的提交信息,但具体改了什么,还得需要自行找。
请使用最新版本! 删除item相关的代码:
mLRecyclerViewAdapter.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {
if (mDataAdapter.getDataList().size() > position) {
ItemModel item = mDataAdapter.getDataList().get(position);
AppToast.showShortText(getApplicationContext(), item.title);
mDataAdapter.remove(position);
}
}
});
其中,remove(int position)方法如下:
public void remove(int position) {
this.mDataList.remove(position);
notifyItemRemoved(position);
if(position != (getDataList().size())){ // 如果移除的是最后一个,忽略
notifyItemRangeChanged(position,this.mDataList.size()-position);
}
}