最近在做开发的时候有一个多选删除的需求,但是试了很多种方案都没有成功。
![](https://img.haomeiwen.com/i16185790/08f2065edfba9207.png)
这个界面需要实现点击右上角的删除图标时在每个item左边出现一个复选框,点击删除按钮时把勾选的item删掉。
![](https://img.haomeiwen.com/i16185790/271d613bd4095067.png)
按理来说,事情已经成功了一半,然而就在删除item时出了问题。
![](https://img.haomeiwen.com/i16185790/6fb2977634a929a7.gif)
把该删除的item删除了,第一个怎么被打上了勾呢?
怀疑可能是glide引发的问题,我又做了一个无图片的Demo来验证我的猜想。
![](https://img.haomeiwen.com/i16185790/7ecd72deeb831ac9.png)
item中仅有一个TextView和一个CheckBox,还是同样的方法,试一下。
![](https://img.haomeiwen.com/i16185790/60983af2110f6a3b.gif)
Nice,成功删除。
总结
以上实验结果显示,item中使用网络加载图片时,使用多选删除会出现很多问题。此外,item数量较多时,长按出现复选框后上下滚动,会出现一些item复选框消失的情况。所以建议不要同时使用网络加载图片和多选删除。
(ps:这是我的第一篇简书文章,如果有错误欢迎大佬指正,代码使用AIDE编写,UI比较粗糙,见谅。)
网友评论