自定义 `UITableViewCell` 中的 UIImageView 触摸功能

Posted

技术标签:

【中文标题】自定义 `UITableViewCell` 中的 UIImageView 触摸功能【英文标题】:UIImageView touch function in custom `UITableViewCell` 【发布时间】:2015-12-07 10:16:42 【问题描述】:

使用 swift。得到一个带有自定义单元格的 tableView。 在单元格中有 imageView 并尝试找出为什么带有 uiimageview 的点击/触摸功能不起作用。 在我的 cellForRowAtIndexPath

var tap = UITapGestureRecognizer(target: self, action: "handleTap:") -

cell.smallImageView.tag = (indexPath.row)

cell.smallImageView.addGestureRecognizer(tap)

还有一个叫做“handleTap”的函数

我启用了用户交互。也有 didSelectRowIndexPath 并且正在用于某些(segue)。

我错过了什么吗?我一直在跟踪***,找不到解决方案。

提前致谢!

【问题讨论】:

假设你的方法是func handleTap(sender: UITapGestureRecognizer)。您是否在单元格或 ImageView 上设置了启用用户交互?你在哪里设置它(在 cellForRowAtIndexPath 中?)? 我认为单元格采用点击手势并调用didSelectRowForIndexPath 而不是调用handleTap @NSNoob:我确实使用了didSelectRowForIndexPath 并在单元格内的 UI 元素上设置了识别器几次,它总是有效。所以我认为这不是问题所在。 尝试以编程方式设置 userInteractionEnabled = true @NSNoob 好的,那我应该怎么做呢?我应该全部删除还是我可以快速尝试的任何简短想法?谢谢~ 【参考方案1】:

在通过阅读 ***.com 并学习了很多之后找到了解决方案(感谢 stackover)

基本上,我从 mad_manny 那里得到了一个想法,提到了一些关于在表单单元格中打开/关闭用户交互的内容。我有想法并从情节提要中查看了“内容视图”,但我不知道它是默认的还是未勾选的,所以我勾选了该框,现在它工作正常。一个滴答声浪费了我 3 天的时间,但没关系。又学到了很多!我想没有痛苦就没有收获!

感谢所有@mad_manny,@NSNoob

【讨论】:

以上是关于自定义 `UITableViewCell` 中的 UIImageView 触摸功能的主要内容,如果未能解决你的问题,请参考以下文章

自定义 UITableViewCell 中的 UIImageview 未正确显示

自定义 uitableviewcell 中的 Uibuttons

自定义 uitableviewcell 中的 uiscrollview

UITableVIewCell 重叠图像中的自定义按钮

更改 uitableviewcell 中的自定义附件视图?

自定义 UITableViewCell 中的按钮操作会影响其他单元格