小编riv*_*awk的帖子

Swift - 当移动到另一个时,如何从场景中删除滑动手势?

所以我的游戏使用滑动手势,在我的didMoveToView()函数中我初始化了这些手势:

            let swipeRight = UISwipeGestureRecognizer()
            swipeRight.direction = UISwipeGestureRecognizerDirection.Right
            self.view?.addGestureRecognizer(swipeRight)

            let swipeLeft = UISwipeGestureRecognizer()
            swipeLeft.direction = UISwipeGestureRecognizerDirection.Left
            self.view?.addGestureRecognizer(swipeLeft)

            let swipeUp = UISwipeGestureRecognizer()
            swipeUp.direction = UISwipeGestureRecognizerDirection.Up
            self.view?.addGestureRecognizer(swipeUp)

            let swipeDown = UISwipeGestureRecognizer()
            swipeDown.direction = UISwipeGestureRecognizerDirection.Down
            self.view?.addGestureRecognizer(swipeDown)
Run Code Online (Sandbox Code Playgroud)

问题是当我移动到我的GameOver场景时,我刷卡,它崩溃了我的应用程序.我注意到有人发布了类似的东西并将其作为答案

override func willMoveFromView(view: SKView) {
   for recognizer in self.view.gestureRecognizers! {
       self.view.removeGestureRecognizer(recognizer)
   }
}
Run Code Online (Sandbox Code Playgroud)

仍然不太确定如何实现这一点和/或在切换到游戏之前从场景中移除手势.有人可以帮忙吗?

uigesturerecognizer ios sprite-kit swift

2
推荐指数
1
解决办法
7852
查看次数

标签 统计

ios ×1

sprite-kit ×1

swift ×1

uigesturerecognizer ×1