Swift3 iOS-如何使UITapGestureRecognizer触发功能

我试图将一个添加UITapGesture到UIButton,以便在点击时将触发一个功能。我正在使用,Swift 3并出现一些错误:

由于未捕获的异常’NSInvalidArgumentException’而终止应用程序,原因:’-[[SwiftRunner.ViewController

tapBlurButton]:无法识别的选择器已发送到实例0x149e07610’

这大致就是我所拥有的:

// Swift 3

import UIKit

class ViewController {

@IBOutlet weak var qsBlurButton: UIButton!

override func viewDidLoad() {

super.viewDidLoad()

let tapGesture = UITapGestureRecognizer(target: self, action: Selector(("tapBlurButton")))

qsBlurButton.addGestureRecognizer(tapGesture)

}

func tapBlurButton(sender: UITapGestureRecognizer) {

print("Please Help!")

}

}

回答:

从您的代码中,您正在使用swift 3.0,因此请selector像这样更改语法

let tapGesture = UITapGestureRecognizer(target: self, action: #selector(self.tapBlurButton(_:)))

和你这样的功能

func tapBlurButton(_ sender: UITapGestureRecognizer) {

print("Please Help!")

}

不知道您正在使用带有点击手势的按钮,而不是使用内置方法addTarget来创建按钮,而无需像这样创建点击手势

qsBlurButton.addTarget(self, action: #selector(self.tapBlurButton(_:)), forControlEvents: .TouchUpInside)

func tapBlurButton(_ sender: UIButton) {

print("Please Help!")

}

以上是 Swift3 iOS-如何使UITapGestureRecognizer触发功能 的全部内容, 来源链接: utcz.com/qa/429648.html

回到顶部