现在的问题是我长按了图标 只是单个item出现了 删除的小图片 而不是所有的 请问要怎么实现长按一个item 所有的itme 项都出现删除的小图片?
大家讲道理2017-04-18 09:17:17
在 Adapter 中的資料物件集合中,設定一個變數用來表示目前的 item 狀態是顯示 刪除小圖示或不顯示。當長按單一item的時候,把所有集合中的資料的刪除狀態變數的值做改變,並使用notifyItemRangeChanged(0,所有的item數量-1) 來通知RecyclerView 所有的item 狀態發生變化,然後會觸發重新呼叫onBindViewHolder ,在裡面根據item 的是否顯示刪除圖示的狀態,顯示圖示即可。
巴扎黑2017-04-18 09:17:17
邏輯寫到bindView當中,需要改變的時候修改flag值然後notifyDataSetChanged
//伪代码如下
public void onBindViewHolder(ViewHolder holder, int position){
myIcon.setVisibility(showIcon ? View.VISIBLE : View.INVISIBLE);
}