gpt4 book ai didi

ios - 使用 gestureRecognizer : shouldRecognizeSimultaneouslyWithGestureRecognizer

转载 作者:行者123 更新时间:2023-11-28 06:43:55 33 4
gpt4 key购买 nike

我正在尝试在我的应用程序上同时检测向上和向下滑动。我有一个 SKScene,我在 func didMoveToView: view 中添加了手势识别器我已设置委托(delegate):UIGestureRecognizerDelegate,并让以下函数全部返回 true。

gestureRecognizerShouldBegin: gestureRecognizer
gestureRecognizer: shouldRecognizeSimultaneouslyWithGestureRecognizer
gestureRecognizer: shouldReceiveTouch

当我用一根手指滑动时,我可以看到 shouldRecognizeSimultaneouslyWithGestureRecognizer 被触发并返回 true。附加到滑动的功能也有效。

但是当我尝试同时向两个方向滑动时,相应的功能不会被触发,shouldRecognizeSimultaneouslyWithGestureRecognizer 也不会被触发。

当我单独执行滑动时,滑动效果很好,但同时没有执行滑动时。

我在这里做错了什么?

编辑:

class GameControlller: SKScene, SKPhysicsContactDelegate, UIGestureRecognizerDelegate {}

添加滑动:

 override func didMoveToView(view: SKView) {
print("did move to view")
let swipeDown = UISwipeGestureRecognizer(target: self, action: #selector(GameControlller.PaddleMoveUp(_:)))
swipeDown.direction = .Down
self.view!.addGestureRecognizer(swipeDown)

let swipeUp = UISwipeGestureRecognizer(target: self, action: #selector(GameControlller.PaddleMoveDown(_:)))
swipeUp.direction = .Up
self.view!.addGestureRecognizer(swipeUp)
swipeDown.delegate = self
swipeUp.delegate = self
}

UIGestureRecognizer 委托(delegate)函数:

func gestureRecognizerShouldBegin(gestureRecognizer: UIGestureRecognizer) -> Bool {
return true
}


func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
print("Simultaneous gesture recognizer!")
return true
}
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldReceiveTouch touch: UITouch) -> Bool {
return true
}

最佳答案

我猜你忘了设置委托(delegate):

swipeUp.delegate = self
swipeDown.delegate = self

关于ios - 使用 gestureRecognizer : shouldRecognizeSimultaneouslyWithGestureRecognizer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37089542/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com