Enk*_*kha 6 ios uicollectionview swift
我" https://www.raywenderlich.com/392-uicollectionview-custom-layout-tutorial-pinterest "创建自定义UICollectionView.(调整细胞高度)
如果我向上滚动,将继续添加单元格,并从上到下滚动以刷新.
运行应用程序并最初生成单元格时没有问题.但是,刷新或重新排序单元格数时始终存在错误.
错误:
***断言失败 - [UICollectionViewData validateLayoutInRect:],/ BuildRoot/Library/Cache/com.apple.xbs/Source/UIKitCore/UIKit-3698.93.8/UICollectionViewData.m:447
***由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'UICollectionView接收到具有不存在的索引路径的单元格的布局属性:
因此," iOS 10错误:UICollectionView接收到不存在索引路径的单元格的布局属性 "并尝试解决错误.
在下面的行
self.artCollectionView.reloadData ()
Run Code Online (Sandbox Code Playgroud)
我尝试添加
self.artCollectionView.collectionViewLayout.invalidateLayout ()
Run Code Online (Sandbox Code Playgroud)
但它没有得到解决.
另外,我不知道在哪里跑
cache.removeAll ()
Run Code Online (Sandbox Code Playgroud)
在prepare()部分.(PinterestLayout.swift中有一个prepare()函数)
解决错误的正确方法是什么?
之所以有prepare功能,PinterestLayout.swift是因为它是用于自定义的唯一布局collectionView。
在第76行的PinterestLayout.swift文件中。
尝试
override public func prepare() {
cache.removeAll()
if cache.isEmpty {
.....
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1622 次 |
| 最近记录: |