在 UITableViewCell 中未检测到点击手势
Posted
技术标签:
【中文标题】在 UITableViewCell 中未检测到点击手势【英文标题】:Tap gesture not detected in UITableViewCell 【发布时间】:2015-10-12 21:08:47 【问题描述】:我正在尝试检测 UITableViewCell 内的 UIImageView 上的点击手势。
这是cellForRowAtIndexPath
里面的部分代码:
let cell1 : cellTableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! cellTableViewCell
tableView.allowsSelection = false
cell1.profileImg.userInteractionEnabled = true
let tappedOnImage = UIGestureRecognizer(target: cell1, action: "tappedOnImage:")
cell1.profileImg.tag = indexPath.row
cell1.profileImg.addGestureRecognizer(tappedOnImage)
这是处理手势的函数:
func tappedOnImage(sender:UITapGestureRecognizer)
print("hey")
但是,当我点击时,什么都没有发生。有什么建议吗?
【问题讨论】:
【参考方案1】:如果不查看更多代码,很难判断出什么问题,但试试这个:
let tappedOnImage = UITapGestureRecognizer(target: self, action: "tappedOnImage:")
【讨论】:
除非你的 tappedOnImage 函数在类 cellTableViewCell 中实现。如果是这种情况,那么我会尝试在该类中添加手势识别器,而不是在 cellForRowAtIndexPath 所在的位置。 是的,一切都在 cellForRowAtIndexPath 中 UIGestureRecognizer 是一个抽象类。在你的 cellForRowAtIndexPath 方法中使用 UITapGestureRecognizer以上是关于在 UITableViewCell 中未检测到点击手势的主要内容,如果未能解决你的问题,请参考以下文章
ImageButton 似乎没有检测到点击(Scene2d.ui)