相关疑难解决方法(0)

UICollectionView performBatchUpdates:如果视图需要布局,则意外断言?

如果我-[UICollectionView performBatchUpdates:]从内部viewWillAppear:,内部viewDidAppear:,这些方法之间调用,或者任何时候集合视图尚未由更大的UIView视图层次结构布局,则集合视图将断言:

***由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无效更新:无效的节数.更新后的集合视图中包含的节数(X)必须等于更新前的集合视图中包含的节数(X),加上或减去插入或删除的节数(插入X,0删除)."

"X"是我插入的任何数量的项目.我已经确认数据源正在正确更新,并且更新中的索引路径是正确的.

当数据源刚刚在调用之前更新时,集合视图状态如何与数据源保持一致performBatchUpdates:?似乎出乎意料地触发了reloadData.

objective-c ios uicollectionview

5
推荐指数
1
解决办法
1858
查看次数

UICollectionView-insertItems(at:indexPath)不起作用

我有一个数组,其中包含一些要UICollectionView显示的元素。然后,我去获取更多元素并将其附加到我的数组中。然后,我想告诉您UICollectionView元素已添加到数据源并更新UI。

我试过了,但是没有用:

// Add more data to my existing array
myArray.append(contentsOf: moreElements)
let indexPath = [IndexPath(row: myArray.count-1, section: 0)]
myCollectionView.insertItems(at: indexPath)
Run Code Online (Sandbox Code Playgroud)

我收到此错误,但不确定是否做错了。

编辑:我不想使用 myCollectionView.reloadData()

ios uicollectionview swift

1
推荐指数
1
解决办法
1464
查看次数

标签 统计

ios ×2

uicollectionview ×2

objective-c ×1

swift ×1