我需要我的应用程序来响应一个滑动手势,我得到了这个代码到目前为止。但由于某种原因,当我滑动时,应用程序就崩溃了。有什么问题吗?我在xcode中使用了swift 3。谢谢
override func viewDidLoad() {
super.viewDidLoad()
var swipeRight = UISwipeGestureRecognizer(target: self, action: "respondToSwipeGesture:")
swipeRight.direction = UISwipeGestureRecognizerDirection.Right
self.view.addGestureRecognizer(swipeRight)
var swipeDown = UISwipeGestureRecognizer(target: self, action: "respondToSwipeGesture:")
swipeDown.direction = UISwipeGestureRecognizerDirection.Down
self.view.addGestureRecognizer(swipeDown)
}
func respondToSwipeGesture(gesture: UIGestureRecognizer) {
if let swipeGesture = gesture as? UISwipeGestureRecognizer {
switch swipeGesture.direction {
case UISwipeGestureRecognizerDirection.Right:
print("Swiped right")
case UISwipeGestureRecognizerDirection.Down:
print("Swiped down")
case UISwipeGestureRecognizerDirection.Left:
print("Swiped left")
case UISwipeGestureRecognizerDirection.Up:
print("Swiped up")
default:
break
}
}
}发布于 2016-12-06 20:55:45
这是由于错误:-没有用Objective选择器'respondToSwipeGesture:‘声明的方法
这意味着编译器没有找到任何方法"respondToSwipeGesture“,当您试图滑动程序时,尝试查找该方法并崩溃,因为它无法找到它。
请提供这样的行动:
let swipeRight = UISwipeGestureRecognizer(target: self, action: #selector(self.respondToSwipeGesture))
let swipeDown = UISwipeGestureRecognizer(target: self, action: #selector(self.respondToSwipeGesture))这将解决你的问题。
https://stackoverflow.com/questions/41004313
复制相似问题