快速触摸 - 如何区分物体

标签 swift xcode6 touches

我仍然对触摸功能不满意。

我能够使用它并且工作正常,但我需要了解它才能进一步推进我的项目。

有人可以帮助我了解如何确定触摸了哪个对象吗?我真的很想了解发生了什么,所以将来我可以做,即基于被触摸的对象类型的 switch 语句......

所以这是我使用的典型代码:

override func touchesMoved(touches: NSSet, withEvent event: UIEvent) {
var touch : UITouch! = touches.anyObject() as UITouch

这是我希望能够做的事情:

switch touch {
case SKSpriteNode
   ....
case SKLabelNode
   ....
case SKNode
   ...

and so on...

可能不正确,但这解释了为什么我想了解如何能够获取传递给 touches func 的信息。请指出正确的方向:-D

最佳答案

UITouch 文档中实际上有一节是关于这个的:

Working with touch events in SpriteKit .

您可以使用 locationInNode 获取位置,然后使用 nodeAtPoint 找出该位置的内容。

关于快速触摸 - 如何区分物体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27412374/

相关文章:

ios - Swift:谷歌登录后转到其他 View Controller

swift - 获取 iCloud Drive 的内容

objective-c - 在 OS X 中使用 NSViewController 在 View 之间切换

ios - 如何在 LaunchScreen 上画一个圆圈?

ios - 如何使 UIImageView 自动调整到加载图像的大小

ipad - iPad Landscape开始困惑

swift - 具有多个用户的ARKit

swift - 在数组中的每个对象上调用实例方法

ios - map View 不更新相机位置,也不使用 animateToLocation

iphone - 将 UIView 添加到 UIButton subview 可防止触摸事件