我有一个自定义的CollectionViewCell类,然后在CollectionView中生成了许多此类。然后,当触摸ViewCell时,我还添加了一种模式选择。激活模式搜索后,如何获取按下哪个单元格的ID(或索引路径)。
我在这里看到有人建议我将方法添加到ViewCell.m文件中
-(void)collectionView: (UICollectionView*)collectionView didSelectItemAtIndexPath: (NSIndexPath*)indexPath{
//get indexpath variable in here
}
但是似乎没有调用此方法。任何人都可以帮助我,当CollectionViewCell具有模式搜索来获取索引路径时需要调用哪种方法。
谢谢,
最佳答案
如果您添加到单元格中的视图通过触发segue处理触摸,则collectionViewCell
将永远没有机会接收触摸。
如果要让collectionViewCell
处理它,请通过禁用它们的行为来触发segue,使单元的子视图成为纯装饰性的。 (例如,如果它们是按钮,并且“touchUpInside
”触发segue,则将其更改为完全不需触摸处理的视图。)
然后,触摸将在视图层次结构中向上传递,直到CollectionViewCell
处理该触摸为止,这由collectionView:didSelectItemAtIndexPath:
方法完成。