这是一个简单的问题,我认为这个答案很容易找到,但却没有。我想在collectionview中选择一个单元格。主要问题是我无法将手势识别器附加到原型单元。我想从触摸的单元格上的标签中抓取文本。我在视图中使用了不同功能的名称。
或者更简单的问题:是否有关于项目列表中的点击选择的教程?
答案 0 :(得分:6)
您在委托中使用方法collectionView:didSelectItemAtIndexPath:
。当您收集单元格并为该特定单元格提供正确的indexPath时,应该触发此操作。
将此indexPath与collectionView的cellForItemAtIndexPath:
结合使用以访问特定单元格。
示例:
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
[self manipulateCellAtIndexPath:indexPath];
}
-(void) manipulateCellAtIndexPath:(NSIndexPath*)indexPath {
UICollectionViewCell *cell = [self.collectionView cellForItemAtIndexPath:indexPath];
// Now do what you want...
}
而且,只要我在这里。迅速版本:
override func collectionView(collectionView: UICollectionView, didDeselectItemAtIndexPath indexPath: NSIndexPath) {
manipulateCellAtIndexPath(indexPath)
}
func manipulateCellAtIndexPath(indexPath: NSIndexPath) {
if let cell = collectionView?.cellForItemAtIndexPath(indexPath) {
// manipulate cell
}
}