刷新UICollectionview

时间:2013-02-07 01:33:58

标签: ios objective-c uicollectionview reloaddata

有人知道在显示集合视图时如何重新加载/刷新UICollectionView吗?基本上我正在寻找类似于UITableview的标准reloadData方法的东西。

3 个答案:

答案 0 :(得分:48)

您可以致电:

[self.myCollectionView reloadData];

也可以重新加载各个部分和项目:

[self.myCollectionView reloadSections:indexSet];
[self.myCollectionView reloadItemsAtIndexPaths:arrayOfIndexPaths];

答案 1 :(得分:10)

[self.collectionView reloadData];

答案 2 :(得分:0)

正确且最好的方法是使用

NSMutableArray *indexPaths = [NSMutableArray array];
//prepare some data
//batchupdate as block
[self.collectionView performBatchUpdates:^{
    //operations like delete
   [self.collectionView deleteSections:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, count)]];
    [self.collectionView insertItemsAtIndexPaths:indexPaths];
} completion:^(BOOL finished) {
    // call something when ready
    }
}];

所有预先计算好的动画。最佳做法是首先删除并添加所有元素,以避免冲突。