gpt4 book ai didi

ios - 在 Swift 中获取多个触摸的坐标

转载 作者:行者123 更新时间:2023-11-30 11:47:38 25 4
gpt4 key购买 nike

所以我一直在尝试获取屏幕上触摸的坐标。到目前为止,我可以获得一次触摸的坐标:

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
let touch = touches.anyObject()! as UITouch
let location = touch.locationInView(self.view)
println(location)
}

但是当用两根手指触摸时,我只能得到第一次触摸的坐标。多点触控有效(我用这个小教程进行了测试: http://www.techotopia.com/index.php/An_Example_Swift_iOS_8_Touch,_Multitouch_and_Tap_Application )。所以我的问题是,如何获得第二次(以及第三次、第四次......)触摸的坐标?

最佳答案

** 更新至 Swift 4 和 Xcode 9(2017 年 10 月 8 日)**

首先,记住通过设置启用多点触控事件

self.view.isMultipleTouchEnabled = true

UIViewController 的代码中,或在 Xcode 中使用适当的 Storyboard 选项:

xcode screenshot

否则,您将始终在 touchesBegan 中获得一次触摸 ( see documentation here )。

然后,在 touchesBegan 中,迭代触摸集以获取它们的坐标:

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
for touch in touches {
let location = touch.location(in: self.view)
print(location)
}
}

关于ios - 在 Swift 中获取多个触摸的坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48643628/

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