无法在Swift游乐场中为SKScene添加滑动识别器?

时间:2017-03-18 23:14:42

标签: swift swift3 swift-playground skscene

好吧,我对游戏操作的快速方式还有点新意,但我想在Swift 3中添加一个轻扫手势识别器到我的快速操场。在http://www.spritekitlessons.com/gesture-recognizer-with-sprite-kit-and-swift/之后,我现在有了:

.as-console-wrapper { max-height: 100% !important; top: 0; }

这个编译,但是当我滑动时,我得到一个无法识别的选择器错误,即使我确实包含了选择器的函数: enter image description here

我也尝试过在课堂上放置这些功能。如何向Swift游乐场SKScene添加滑动识别器?

1 个答案:

答案 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()方法不存在,则使用新的选择器语法,您将收到编译错误 - 由于“无法识别的选择器”,您的应用程序不会崩溃。