使用UICollectionView的selectItemAtIndexPath的数组

时间:2013-02-18 20:18:02

标签: objective-c uicollectionview

我正在尝试以编程方式在UICollection视图中选择单元格。我是Obj-C的新手,我不太确定如何使用selectItemAtIndexPath属性。我可以抓取用户之前选择的图像数组。它只是一个与命名图像对应的数字数组。但是我不确定如何在selectItemAtIndexPath中使用该信息。

我找了一个使用

的人的例子
- (void)selectItemAtIndexPath:(NSIndexPath *)indexPath animated:(BOOL)animated scrollPosition:(UICollectionViewScrollPosition)scrollPosition

但是我不知道如何在我的UICollectionView中使用它,所以我可以在视图加载时选择正确的单元格,从而突出显示。我有多个选择。

1 个答案:

答案 0 :(得分:2)

您应该为要突出显示的每个单元格调用selectItemAtIndexPath:,如下所示:

[self.collectionView selectItemAtIndexPath:path animated:NO scrollPosition:UICollectionViewScrollPositionNone]

请注意,对于一个项目(仅限一个项目!),您可能希望将动画属性设置为YES并提供滚动位置(仅限一项,因为否则您将创建很多的不必要的动画调用)。

首先需要获取要选择的单元格的索引路径。索引路径由两个数字组成:单元格所在的部分和内部单元格的行号(或顺序,如果您的集合视图没有行)那部分。

如果存储用户在数组中选择的单元格的索引路径,则可以迭代。否则,您需要使用UICollectionView方法(例如indexPathForCell)找到索引路径。