Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UITapGestureRecognitor在Swift 3.0中不工作_Ios_Swift_Uiimageview_Swift3_Uitapgesturerecognizer - Fatal编程技术网

Ios UITapGestureRecognitor在Swift 3.0中不工作

Ios UITapGestureRecognitor在Swift 3.0中不工作,ios,swift,uiimageview,swift3,uitapgesturerecognizer,Ios,Swift,Uiimageview,Swift3,Uitapgesturerecognizer,这看起来很简单,但我已经有一段时间不知道为什么这不起作用了。我试图在点击时改变图像,但它似乎根本无法识别点击。我已经在故事板和程序上启用了用户交互,所以我有点迷茫 override func viewDidLoad() { super.viewDidLoad() tL.isUserInteractionEnabled = true x = UIImage(named: "Cross.jpg") reset = UIImage(named: "white.png

这看起来很简单,但我已经有一段时间不知道为什么这不起作用了。我试图在点击时改变图像,但它似乎根本无法识别点击。我已经在故事板和程序上启用了用户交互,所以我有点迷茫

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")
}

有趣的逻辑需要1个参数,您应该在选择器中提供这样的参数。从

let gestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(Logic))


不要将
逻辑
函数嵌套在
viewDidLoad
中。它实际上不在里面,我删掉了很多代码,因为它不需要。仍然不工作。UITapgestureRecognizer在swift3中工作正常。如果GestureRecognitor位于viewDidLoad()内部,而func逻辑位于viewDidLoad()外部,则代码也可以正常工作。问题是其他的。如何添加“tL”?它被其他观点所掩盖了吗?@swift初学者你发现了吗?我也有同样的问题,
let gestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(yourClassName.Logic(_ : )))