我在自定义UICollectionViewCell
中创建了一个按钮,并在按钮块中添加了一个目标,如:
@interface MYCollectionViewCell : UICollectionViewCell
@property (nonatomic, copy) void (^clickButtonBlock)(BOOL boolValue);
@end
并设置块以删除单元格我单击cellForItemAtIndexPath
中的按钮,如:
[self.collectionView performBatchUpdates:^{
[strongSelf.dataArray removeObjectAtIndex:index];
[strongSelf.collectionView deleteItemsAtIndexPaths:@[[NSIndexPath indexPathForRow:index inSection:0]]];
[strongSelf.collectionView insertItemsAtIndexPaths:@[[NSIndexPath indexPathForRow:5 inSection:0]]];
}];
删除第一个单元格后。下一个单元格的NSIndexPath
错误,并且块中的函数[collectionView indexPathForCell:strongCell];
获得了正确的值。
我不知道为什么他们不同?
答案 0 :(得分:2)
删除后你没有调用collectionView.reloadData()
,因此在删除后你没有得到正确的索引路径。
请致电方法,然后检查。