使一个小的UIImageView易于点击

时间:2015-06-11 19:07:41

标签: ios swift uiimageview uigesturerecognizer

我有一个带行的UITableView。
每行都有一个右侧对齐的 UIImageView(“书签”图标)

UIimageView与UITapGestureRecognizer相关联。

    cell.favoritedImageView.userInteractionEnabled = true
    cell.favoritedImageView.addGestureRecognizer(gestureRecognizer)

问题在于,要用手指实际敲击它(在真实设备中),你必须使用手指尖并且非常准确,因为图像很小。

如果您错过了点击图片视图,则会点按该单元格(didSelectRowAtIndexPath)并最终执行show-segue到另一个视图,因此您必须返回并重试(不要冷静)

问题:解决这个问题的最佳方法是什么? 我希望它很容易被挖掘。

我有一些想法:

  1. 使用透明的周边创建一个更大的图像(即:用透明背景裁剪出来) - 缺点是我也在其他视图中使用此图像,其中不可点击,所以我必须创建两个图像的版本
  2. 将图像放入UIView并使UIView变大且可点击而不是UIImageView
  3. 向UIImageView添加填充(这会有效吗?还是在UITapGestureRecognizer中无法识别填充?)

1 个答案:

答案 0 :(得分:0)

根据您自己的建议,您应该创建一个更大的透明视图,并将UITapGestureRecognizer附加到视图,然后将较小的图像嵌套在视图中。这样外观是相同的,但是你可以通过选择单元格来处理更大的区域以便识别水龙头。