7

我目前正在开发一个 iPad 应用程序的项目。主屏幕是一个UICollectionViewwithAlbumCell的子类UICollectionViewCell。现在我想添加一个UILongPressGestureRecognizer来弹出一个UIActionSheet.

首先我在 中尝试过UICollectionViewController,但我认为那不是添加这些的正确位置。所以我最好的猜测是在课堂上添加手势AlbumCell?然后可能将自己添加为委托,因此它可以捕捉到自己的手势。

到目前为止,这是一个好方法吗?

捕捉到手势后,我应该显示UIActionSheet. 现在我在UICollectionViewController用户在编辑模式下选择一个单元格时打开它。但是我应该像现在一样调用一个方法UICollectionViewController来打开它吗?还是细胞应该自己处理UIActionSheet

最终我得UICollectionViewController让他做什么,可能是让他打开UIActionSheet,或者根据结果进行处理。应该如何AlbumCell“沟通”呢?

这是我一直在努力解决的问题,不仅仅是在这个用例中。方法是否接近,还是我应该完全不同地处理这些行为?

4

1 回答 1

13

您可以采用相同的方法使用UILongPressGestureRecognizeronUITableView

基本上,设置一个识别器。在选择器中,使用indexPathForItemAtPoint:找出用户正在按下的索引路径。最后,如果用户正在按下单元格(而不是按下单元格之间的空间),UIActionSheet则呈现您喜欢的任何内容。

于 2012-09-21T11:31:53.017 回答