iOS点击手势问题

我是一个不爱总结的人,但是今天在开发遇到的bug,我不记录下来是不行了,一是为了自己防止以后忘了,二是给以后的人铺路,都2020年了,不能让百度再把,15、16年的东西放在前面了,恶心到我了。

Xcode 版本11.2, Swift版本5,这是关于添加手势后,点击事件无法响应的问题,(事先声明:isUserInteractionEnabled = true 不要忘了)

不知道何时起Swift的手势识别器需要懒加载初始化,有大佬说是Xcode 10之后,我具体也不清楚,不过今天是遇到了,不响应,就需要懒加载,好了上代码。

class ViewController: UIViewController {

    @IBOutlet weak var aImageView: UIImageView! //拖拽的控件
    lazy var tap: UITapGestureRecognizer = {
        let tap = UITapGestureRecognizer(target: self, action: #selector(singleTapAction))
        
        return tap
    }()

    
    override func viewDidLoad() {
        super.viewDidLoad()
        self.view.isUserInteractionEnabled = true
        aImageView.isUserInteractionEnabled = true
        aImageView.addGestureRecognizer(tap)
        // Do any additional setup after loading the view.
    }

    @objc func singleTapAction() {
        print("\(String(describing: tap.view))")
    }
}

对了,补充一下:方法不需要加参数,不用听一些人扯屁,不需要参数也可以调用点击方法

你可能感兴趣的:(iOS点击手势问题)