我有RecyclerView
及其RecyclerView.Adapter
和查看人。我想作爲內部onClick()
上刪除按鈕在ViewHolderRecyclerView notifyItemRemoved(位置)不能正常工作
int position = getAdapterPosition();
if(position > -1)
{
Place place = placeList.remove(position);
notifyItemRemoved(position);
notifyItemRangeChanged(position, getItemCount());
}
儘管去掉視圖和做動畫(名單也被影響),舊觀點(或下一個跟隨來刪除列表中的項目,代碼)仍然存在或再次繪製。 例如,如果列表以size = 5開始,那麼我嘗試刪除索引4,他刪除4,然後仍然繪製5個視圖。
編輯
如果我刪除notifyItemRangeChanged()
那麼它是錯誤只如果我很快做刪除
2-點擊按鈕下面
1-點擊那個帶我到新查看
3-返回到我可以刪除的列表
4-開始刪除,併發生錯誤。即使List
大小= 0(getItemCount被調用0),1項仍然保留。
如果我只調用NotifyDataSetChanged(),那麼它將刪除項目,但視圖只是停留在那裏!
讚賞任何幫助或建議。
謝謝。
編輯完整的類LINK
我也面臨這個問題,並嘗試一切可用的在線,但沒有任何效果。但在我的情況下,它有時可以正常工作,雖然有時當我觸摸我的列表時,它會刪除空白空間 –
@Vivek Mishra正常行爲,我點擊刪除,它沒有notifyItemRangeChanged()。但是,如果我去新的觀點,回去,>>錯誤發生 –