我刚刚开始实现多选 UICollectionView。下面会被认为是“安全”代码吗(因为我假设有一些原因它被称为 BackgroundView 而不是 AccessoryView 或类似的)?我想节省一些精力,我打算在索引路径中跟踪所选项目,以便通过数组进一步使用。
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
//....
cell.selectedBackgroundView = someView_With_A_Checkmark_Image;
[cell bringSubviewToFront:cell.selectedBackgroundView];
//...
return cell;
}
最佳答案
安全吗?当然,它不会导致任何错误。如果你的backgroundView在cell的contentView之上,那contentView
有什么意义??。
Collection View 单元格结构
如果您在 Collection View 中选择一个项目,collectionView 将切换BackgroundView
和Selected background view
。因此,您可以做的是在配置自定义单元格时将有效 View 作为背景 View 和选定的背景 View ,或者更改 didSelectItem 中单元格的任何属性以区分选择。那更好。
然后又不需要使用单独的数组来跟踪选择。 [self.collectionView indexPathsForSelectedItems] 将在任何时间点为您提供所选项目的路径
关于ios - UICollectionView 单元格 : is it safe to bring cell. selectedBackgroundView 到前面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15615408/