我想使用collectionView.deleteItems(at: [IndexPath])
并保持数据源完整。这种想要的行为的目的是能够对我的收藏夹视图应用过滤器,并借助collectionView.reloadData()
轻松地还原,并保持酷炫的内置删除动画。
是否有解决此问题的方法?
答案 0 :(得分:1)
您的数据源始终需要与集合视图中显示的内容匹配。
最简单的方法是为您的数据提供两个数组。 allData
和displayedData
。您的收藏夹视图始终将displayedData
视为数据源。
如果用户添加了过滤器,则可以更新displayedData
中的值并运行所需的动画。用户删除过滤器后,您将displayedData
设置回allData
并再次设置动画。