我在扩展UIImageView的类中的UITableViewCell上有点击手势。这段代码应该工作,我不明白为什么不行。我唯一不满意的是“目标”应该是什么-应该是profileImage还是事物所在的整体ViewController?

@IBOutlet weak var profileImage: UIImageView!

var vc: TweetsViewController? = nil

override func awakeFromNib() {
    super.awakeFromNib()
    let tapGester = UITapGestureRecognizer(target: vc, action: Selector("handleTapGester:"))
    tapGester.delegate = self
    profileImage.addGestureRecognizer(tapGester)
}

func handleTapGester(tapGesture: UITapGestureRecognizer) {
    print("*******hi*******")
    vc?.performSegueWithIdentifier("showProfile", sender: nil)
}


为了记录在案,因为这似乎是一个相关的错误,所以我在加载表格单元格时初始化了vc。

最佳答案

目标应该是将处理轻击手势的对象,并且handleTapGester函数应该在您指定为目标的对象类中,而不是在UITableViewCell子类中。

您还需要通过以下方式在UIImageView上启用用户交互:

imageView.userInteractionEnabled = true

关于ios - 轻击手势有问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35561083/

10-09 23:11
查看更多