如何仅重新加载UICollectionView的可见部分?

时间:2016-10-27 11:29:57

标签: ios objective-c uicollectionview

我正在尝试根据设备的方向更改部分中的项目数。

我通过在viewWillTransitionToSize中重新加载整个集合视图并更改"部分"中最大允许项目的数量来实现它。在UICollectionView中的部分数量。

这不是最好的方法,因为我可以看到我们可以加载特定的部分。 如果您能提出更好的解决方案,请分享。

2 个答案:

答案 0 :(得分:2)

您可以使用以下代码重新加载特定部分:

table.visibleCells

如果您想根据可见部分进行操作,则需要获取如下可见单元格:     let table = UITableView() var indexes = IndexSet() let visibleCells = table.visibleCells for cell in visibleCells { indexes.insert((table.indexPath(for: cell)?.section)!) } table.reloadSections(indexes, with: UITableViewRowAnimation.automatic)

创建段的索引以从这些可见单元重新加载

$ http PUT localhost:8080/user <<<'{ "user": { "name": "john" "age": 10 }}'

答案 1 :(得分:0)

    NSSet *visibleSections = [NSSet setWithArray:[[self.tableView indexPathsForVisibleRows] valueForKey:@"section"]];

[self.myCollectionView reloadSections:visibleSections];