iOS8.4。在设备上不是模拟器。
我收到了这个错误;
Assertion failure in -[UICollectionView _updateWithItems:tentativelyForReordering:], /SourceCache/UIKit/UIKit-3347.44.2/UICollectionView.m:4563
当我打电话
NSArray* array_indexPaths = [NSArray arrayWithObject:[NSIndexPath indexPathForRow:1 inSection:0]];
[self.collectionView reloadItemsAtIndexPaths:indexPaths];
尝试将上述内容放入其中
[self.collectionView performBatchUpdates:^{
没有运气。
有没有其他人经历过这个或者知道为什么会这样?
答案 0 :(得分:4)
我发现这个rdar:http://www.openradar.me/26280932说:
在viewDidLoad之后但在viewDidAppear之前调用insertItemsAtIndexPaths:在UICollectionView上:将导致断言失败 - [UICollectionView _endItemAnimationsWithInvalidationContext:tentativelyForReordering:]。在同一场景中调用reloadData并不会产生断言。
因此,您可以在viewDidAppear
之前检查您是否正在接听电话,并在视图显示之前调整/等待。