我一直在收到错误"类型' ViewController'没有会员'行动'"
(行动是功能)
以下是我用于该功能和Gesture Recogniser的代码
let uilpgr = UILongPressGestureRecognizer(target: self, action: #selector(self.action))
uilpgr.minimumPressDuration = 2
Map.addGestureRecognizer(uilpgr)
func action(gestureRecogniser: UIGestureRecognizer) {
print("Gesture Recognised")
}
let uilpgr = UILongPressGestureRecognizer(target: self, action: #selector(self.action))
这是self.action
发生错误的地方我做错了什么以及如何解决?
答案 0 :(得分:2)
override func viewDidLoad() {
super.viewDidLoad()
let uilpgr = UILongPressGestureRecognizer(target: self, action: #selector(ViewController.action))
}
@objc func action(gesture:UIGestureRecognizer){
print("receives gesture")
}
答案 1 :(得分:1)
您的方法action
在创建手势识别器的同一方法中在本地声明。
要解决此问题,请将action
方法移到当前所使用的方法之外。这就是它自己的类ViewController
的方法,而不是任何其他函数。
答案 2 :(得分:1)
这适用于Xcode 8:
override func viewDidLoad() {
super.viewDidLoad()
let uilpgr = UILongPressGestureRecognizer(target: self, action: #selector(ViewController.action))
}
func action(gesture:UIGestureRecognizer){
print("receives gesture")
}