自定义 `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