这可能看起来真的很简单,但我已经纠结了一段时间,想知道为什么这不起作用。我试图在点击时更改图像,但它似乎根本无法识别点击。我在 Storyboard上和以编程方式启用了用户交互,所以有点迷茫。
override func viewDidLoad() {
super.viewDidLoad()
tL.isUserInteractionEnabled = true
x = UIImage(named: "Cross.jpg")
reset = UIImage(named: "white.png")
//Tap Gesture ------------------------------------------------------------
let gestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(Logic))
gestureRecognizer.numberOfTapsRequired = 1
tL.addGestureRecognizer(gestureRecognizer)
}
func Logic(_ sender: UITapGestureRecognizer) {
let tappedView = sender.view as! UIImageView
tappedView.image = x
print("Image Tapped")
}
最佳答案
fun 逻辑需要 1 个参数,您应该在选择器中提供。变化自
let gestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(Logic))
到
let gestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(yourClassName.Logic(_ : )))
关于ios - UITapGestureRecognizer 不适用于 Swift 3.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41170911/