在我的主ViewController的viewdidload中,我创建了一个let语句,因此我可以启用tap功能。
override func viewDidLoad() {
super.viewDidLoad()
let tapRecognizer = UITapGestureRecognizer(target: self, action: #selector(self.tap(_:)))
self.view.addGestureRecognizer(tapRecognizer) }
在另一个视图中,我想禁用这个let语句:
tapRecognizer.isenabled = false
在不使用segue的情况下从我的主ViewController访问'tapRecognizer'最简单的方法是什么,因为第二个视图是UIView所以我认为我不能以这种方式访问它。
答案 0 :(得分:0)
声明tapRecognizer
实例变量,以便可以在任何方法中访问,或者在视图控制器之外可以访问
var tapRecognizer:UITapGestureRecognizer!
override func viewDidLoad() {
super.viewDidLoad()
tapRecognizer = UITapGestureRecognizer(target: self, action: #selector(self.tap(_:)))
self.view.addGestureRecognizer(tapRecognizer)
}