在学习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
width
和height
。另外,我在主情节提要中已选中“使用自动布局”。 最佳答案
如果将场景的缩放模式更改为.AspectFit
,您将能够快速查看问题所在。您为场景设置的分辨率与设备的纵横比完全不同。实际上,当我回答您的最后一个问题时,我以为您使用768x1024分辨率意味着您正在为iPad开发,这是正确的分辨率。
在具有4英寸屏幕的iPhone上,您应该将场景的大小设置为320x568,而对于3.5英寸屏幕则设置为320x480。但是,可以通过在视图控制器中将这一行添加到场景创建中来简化此操作。它将场景的大小设置为视图控制器视图的大小。
scene.size = skView.bounds.size
关于ios - SpriteKit的位置困惑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24306048/