我有一个带有isPagingEnabled属性的collectionView属性。我的每个CollectionView单元格都与ViewController的大小相同。我正在使用像pager这样的集合视图。
现在我正在尝试删除" indexNumber' (注意:我从其他地方获取此indexNumber )使用以下代码: -
let deletingIndexPath = IndexPath(item: indexNumber, section: 0) // Line 1
self.collectionViewPager.deleteItems(at: [deletingIndexPath]) // Line 2
self.collectionViewPager.scrollToItem(at: deletingIndexPath, at: UICollectionViewScrollPosition(rawValue: 0), animated: true) // Line 3
我在第2行遇到异常,如下所述: -
由于未捕获的异常终止应用程序' NSInternalInconsistencyException',原因:'无效更新:第0部分中的项目数无效。更新后现有部分中包含的项目数(4)必须等于更新前该部分中包含的项目数(4),加上或减去从该部分插入或删除的项目数(0插入,1删除)和加或减项目数移入或移出该部分(0移入,0移出)。'
虽然我可以使用以下代码在collectioView中插入项目: -
let insertingIndexPath = IndexPath(item: self.numberOfPages - 1, section: 0)
self.collectionViewPager.insertItems(at: [insertingIndexPath])
self.collectionViewPager.scrollToItem(at: insertingIndexPath, at: UICollectionViewScrollPosition(rawValue: 0), animated: true)
请帮助删除项目中缺少的内容。提前谢谢。
答案 0 :(得分:0)
我已经解决了上述问题。这个问题是由于我试图在第3行之后从我的本地数组中删除该项目。当我在第1行之前放置逻辑删除项目。已解决。