通过位置确定精灵的名称

Posted

技术标签:

【中文标题】通过位置确定精灵的名称【英文标题】:determine the name of the sprite by position 【发布时间】:2018-05-19 17:06:53 【问题描述】:

我有很多SpriteNode:

sharesA.name = "sharesA"
sharesB.name = "sharesB"
sharesC.name = "sharesC"
ect.....

其中一个有一个职位,例如:

CGPoint(x: 1159, y: 406)

如何找出处于这个位置的精灵的名字?

【问题讨论】:

【参考方案1】:

如果您只有坐标,您可以尝试: let name = nodeAtPoint(location).name ?? ""

如果你想根据用户的触摸来判断,你可以试试这样的:

 class MyScene: SKScene 

     override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) 

        var touch = touches as!  Set<UITouch>
        var location = touch.first!.locationInNode(self)
        var node = self.nodeAtPoint(location)
        let nodeName = node.name
     
 

【讨论】:

nodeAtPoint 返回与点相交的最深可见后代。"background" 不客气。很高兴听到!请随时投票并接受答案。 :)

以上是关于通过位置确定精灵的名称的主要内容,如果未能解决你的问题,请参考以下文章

通过名称 Swift 2、Xcode 7 获取 SKSpriteNode

利用按键精灵实现点击微信公众号

基于openharmony的储物精灵

android 版百度地图如何通过定位功能获得当前的位置所在的城市?

我应该如何为精灵表中的精灵分配名称?

根据其他对象的位置在圆周上绘制精灵