我试图理解的锚点的基础知识在迅速阅读本: https://developer.apple.com/library/ios/documentation/GraphicsAnimation/Conceptual/SpriteKit_PG/Nodes/Nodes.htmlSwift中的锚点?
我了解,在siwft,与精灵套件,现场的定位点是在屏幕的下左上角。
所以,如果我定位是这样的节点:
myNode.position = CGPoint(x: 0, y: 0)
self.addChild(myNode)
它不会出现在我的视线。所以我尝试了另一件事:
myNode.position = CGPoint(x: middleOfmyView, y: 0)
self.addChild(myNode)
现在我看到了我的广场顶部的一半。所以我从屏幕底部看到20个像素。
于是我说:
myNode.position = CGPoint(x: middleOfmyView, y: 0+myNode.frame.size.height/2)
self.addChild(myNode)
现在我可以看到我的整个广场,在屏幕的中间。
然后,我把它放在X:0,让在Y点这样的:
myNode.position = CGPoint(x: 0, y: 0+myNode.frame.size.height/2)
self.addChild(myNode)
现在我看不到我的节点即使在右下角写有“1节点”出现我的屏幕角落!
所以我想知道的是iPhone屏幕的0,0点真的在屏幕的左下角? 那么我的精灵节点的锚点在哪里?我怎么把我的广场放在屏幕的左下角?
这一切只是为了了解事情是如何工作的?非常感谢提前对你的帮助:)
我使用的Xcode 7.3.1,我仍然不明白为何点0让我做没有看到我的东西......这绝对是一个错误?
你确定场景在你的视图中处于正确的位置吗?与主视图的框架相比,场景的“框架”是什么? – jrturton
当我打印框架场景时;我得到了:((-0.0,-0.0,1024.0,768.0)) 因此,与主视图相同,不是?无论如何,在尝试将节点放在场景中之前,我并没有改变场景的框架。 – Julien
视图大小不一定与场景大小相同(要实现此目的,可以在视图控制器中设置scene.size = view.bounds.size)。因此,如果您的视图是iPhone 6的大小,则默认场景为1024x768,这意味着,如果将节点放置在0,0,则根据节点大小可能看不到节点。 – Whirlwind