1

我刚刚开始实现多选 UICollectionView。以下是否会被视为“安全”代码(因为我认为它被称为 BackgroundView 而不是 AccessoryView 等)?我想节省一些精力,我打算跟踪索引路径中的选定项目,以便通过数组进一步使用。

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath 
{
 //....

 cell.selectedBackgroundView = someView_With_A_Checkmark_Image;
 [cell bringSubviewToFront:cell.selectedBackgroundView];

 //...
return cell;

}
4

1 回答 1

2

安全吗??雅当然不会导致任何错误。如果你的backgroundView在单元格的contentView之上,那这个意义何在contentView??

集合视图单元格结构
在此处输入图像描述

如果你在collection view中选择了一个item,collectionView会切换BackgroundViewSelected background view。因此,您可以做的是在配置自定义单元格时将有效视图作为背景视图和选定的背景视图,或更改didSelectItem中单元格的任何属性以区分选择。那更好。

然后不再需要使用单独的数组来跟踪选择。[self.collectionView indexPathsForSelectedItems]将在任何时间点为您提供所选项目的路径

于 2013-03-25T14:37:34.100 回答