Akh*_*rma 6 objective-c ios uicollectionview
我正在创建一个应用程序,我在工具栏上有一个按钮,用于选择集合视图中的所有项目.
但我面临的问题是,当我点击按钮时,它只选择屏幕上可见的项目.这是由于CELL REUSE功能.
有没有什么方法可以选择所有单元格,甚至那些当前对用户不可见的单元格?
谢谢J
Gas*_*enc 17
即使使用单元重用,这也是可能的.您可以在第一部分中选择所有单元格:
for (NSInteger row = 0; row < [self.collectionView numberOfItemsInSection:0]; row++) {
[self.collectionView selectItemAtIndexPath:[NSIndexPath indexPathForRow:row inSection:0] animated:NO scrollPosition:UICollectionViewScrollPositionNone];
}
Run Code Online (Sandbox Code Playgroud)
如果你有超过1个部分,只需使用另一个嵌套的for循环来遍历所有部分.
使用单元复用时不可能选择所有单元。
由于单元格重用,任何时刻存在的实际单元格数量比当前可见的单元格数量多一些。即 6 个可见的细胞大约是现有的 8 个细胞。
您可以找出有多少可见细胞
NSArray *visiblePaths = [self.collectionView indexPathsForVisibleItems];
Run Code Online (Sandbox Code Playgroud)
解决方案是将selected值存储在 UICollectionView 数据源中,并在自定义其中的单元格时使用该值cellForItemAtIndexPath
| 归档时间: |
|
| 查看次数: |
11488 次 |
| 最近记录: |