gpt4 book ai didi

iOS:实现单指平移和两指平移手势?

转载 作者:搜寻专家 更新时间:2023-10-31 22:20:39 25 4
gpt4 key购买 nike

目标是针对同一个 SCNScene 实现两个平移手势:一个用一根手指,另一个用两个手指。

下面的代码无效。即使为手势分配了不同的选择器,单指平移功能也永远不会被调用。单指平移和双指平移都调用 sceneViewPannedTwoFingers

从阅读其他问题来看,似乎 shouldRecognizeSimultaneouslyWithGestureRecognizer 可能是答案,但这些平移不是同时发生的。它应该是单指平移或双指平移,不能同时使用。

是否可以像上面描述的那样有两个平移手势?如果是这样,执行此操作的正确方法是什么?

    // Handle one-finger pans
let panRecognizer = UIPanGestureRecognizer(target: self, action: #selector(sceneViewPannedOneFinger))
sceneView.addGestureRecognizer(panRecognizer)

// Handle two-finger pans
let twoFingerPanRecognizer = UIPanGestureRecognizer(target: self, action: #selector(sceneViewPannedTwoFingers))
sceneView.addGestureRecognizer(twoFingerPanRecognizer)


func sceneViewPannedTwoFingers(sender: UIPanGestureRecognizer) {
print("two finger pan!!!")
}


func sceneViewPannedOneFinger(sender: UIPanGestureRecognizer) {
print("one finger pan!!!")
}

最佳答案

您需要将 UIGestureRecognizerDelegate 添加到您的 View Controller ,并在您的 View Controller 中将手势识别器委托(delegate)设置为 self。添加为它们返回 true 的 shouldRecognizeSimultaneouslyWithGestureRecognizer 方法。确保您也为它们设置了最小和最大触摸次数。

关于iOS:实现单指平移和两指平移手势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38760299/

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