2015-12-15 104 views
2

我想從我的適配器onBindViewHolder中從RecyclerView中刪除項目。 當我把這個...RecyclerView項目動畫問題

public void removeDropFromView(int position) { 
    data.remove(position); 
    notifyItemRemoved(position); 
} 

...我的動畫節目,但不會允許適配器位置更新(新位置0變爲1位)。

當我把這個...

public void removeDropFromView(int position) { 
    data.remove(position); 
    notifyItemRemoved(position); 
    notifyDataSetChanged(); 
} 

...該項目被刪除,我的所有項目的位置都更新,但它完全跳過動畫。

有人說,我的煩惱是從onBindViewHolder這不是可能的未來,但我已經嘗試了所有這些都在ViewHolder的onClick具有相同的結果。

我怎樣才能讓動畫顯示,同時也保持所有的數據正確的順序?

感謝您的幫助!

回答

0

在刪除數據之前,先獲取其視圖,然後調用視圖的setIsRecyclable(false)。檢查this,第102行。它使用滑動刪除。

相關問題