SpriteKit位置混乱

时间:2014-06-19 11:57:54

标签: ios sprite-kit swift

在学习SpriteKit时,我正在制作一个带有1个按钮的场景。我不明白职位的运作方式。我读到的是0,0是左下角,默认锚点位于每个按钮(0.5,0.5)的中间。场景为scene.scaleMode = .AspectFill。如果我写:

    self.playButton.position = CGPointMake(self.playButton.size.width/2,CGRectGetMidY(self.frame))
    self.addChild(self.playButton)

我得到下面截图中的内容。 如果我将playbutton.position.x设置为self.playbutton.size.width/2,那么我认为它将位于屏幕的左边缘。屏幕上并不奇怪。我已经阅读了有关大小的文档了几天,我似乎仍然无法理解它。我还明确地设置了:

    self.size.width = 768
    self.size.height = 1024 

意味着场景size widthheight。我也有"使用自动布局"在主要的故事板检查。

enter image description here

1 个答案:

答案 0 :(得分:2)

如果您将场景的缩放模式更改为.AspectFit,您将能够快速查看问题所在。您为场景设置的分辨率与设备的分辨率完全不同。事实上,当我回答你的上一个问题时,我认为你使用768x1024分辨率意味着你正在为iPad开发,这是正确的分辨率。

在屏幕为4英寸的iPhone上,您应将场景的大小设置为320x568,33英寸屏幕的320x480。但是,可以通过将此行添加到视图控制器中创建场景来简化此操作。它会将场景的大小设置为视图控制器视图的大小。

scene.size = skView.bounds.size