ios - 使一个小的 UIImageView 易于被点击

标签 ios swift uiimageview uigesturerecognizer

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

UIimageView 具有关联的 UITapGestureRecognizer

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

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

如果您错过了点击 imageView,则会点击该单元格 (didSelectRowAtIndexPath),并且您最终会执行到另一个 View 的显示转场,因此您必须返回并重试(不酷)

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

我有一些想法:

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

最佳答案

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

关于ios - 使一个小的 UIImageView 易于被点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30789396/

相关文章:

ios - 选择相邻单元格时分隔线消失

ios - 正确释放返回的 UIImage

swift - 如何在导航栏下方添加 ImageView 填充?

iphone - 为什么资源包将 .png 复制为 .tiff 图片?

ios - 从 searchBar 保存搜索

ios - 选择表格 View 单元格中的文本并返回到上一个 View

ios - 整数错误

swift - NSTableCellView View 中的 NSPopupButton 导致泄漏

iphone - Phonegap 在启动画面后显示白屏 - IOS

objective-c - iOS:卸载和弹出 View Controller