好吧,我对游戏操作的快速方式还有点新意,但我想在Swift 3中添加一个轻扫手势识别器到我的快速操场。在http://www.spritekitlessons.com/gesture-recognizer-with-sprite-kit-and-swift/之后,我现在有了:
.as-console-wrapper { max-height: 100% !important; top: 0; }
这个编译,但是当我滑动时,我得到一个无法识别的选择器错误,即使我确实包含了选择器的函数:
我也尝试过在课堂上放置这些功能。如何向Swift游乐场SKScene添加滑动识别器?
答案 0 :(得分:1)
你有选择器作为字符串传递,它们肯定是错误的,如错误日志中所述
尝试使用新的选择器语法 - #selector(methodName)
。
示例:
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
/* Swift 3 */
let swipe = UISwipeGestureRecognizer(target: self, action:#selector(handleSwipe))
view.addGestureRecognizer(swipe)
}
func handleSwipe() {
print("Swiped!")
}
}
使用字符串作为选择器已弃用。
如果methodName()
方法不存在,则使用新的选择器语法,您将收到编译错误 - 由于“无法识别的选择器”,您的应用程序不会崩溃。