【问题标题】:iOS incorrect width and heightiOS不正确的宽度和高度
【发布时间】:2015-01-16 17:25:09
【问题描述】:

首先,我是 iOS 新手。 最近我尝试用 spritekit 制作一些游戏,但无论我如何尝试,我都无法获得正确的尺寸。 问题是,我没有改变方向设置,但是当我打印出self.size时,宽度是1024,高度是768,这会导致灾难,首先,我的背景图像是根据横向尺寸拉伸的但以纵向显示;其次,CGPointZero(坐标(0,0))实际上是在屏幕之外而不是屏幕的左下角。 (所以当我尝试添加边缘时,它们实际上不在屏幕内,这让我很头疼) 我想知道为什么会这样。

我注意到iOS7中的initWithSize方法已经不在iOS8自动生成的模板中了,取而代之的是一个didMoveToView。那么假设我们可以用这种方法开始做事是否正确?

【问题讨论】:

  • 如果您的场景是从 .sks 文件加载的,则更改该文件中场景的大小。如果您不想从 .sks 文件加载场景,您仍然可以使用 init(size:)
  • 大多数 SK 开发人员从 viewWillLayoutSubviews 运行第一个场景,因为尺寸混淆,所以请查看并尝试一下。接下来,如果您将精灵定位在 0,0 处,则只有其右上角的四分之一会出现在屏幕上 - 这是正常的,因为精灵默认位于该位置的中心。您可以将精灵的锚点更改为 0,0,但通常建议不要这样做,而是将位置设置为精灵的一半宽度/高度(锚点也是缩放/旋转操作的中心,因此最好别管它玩游戏精灵)。

标签: ios objective-c sprite-kit


【解决方案1】:

大家好,我刚刚找到了解决方案! 我认为我实际指的大小是场景大小,在 xcode 6 中默认情况下由 GameScene.sks 文件确定。 大小不正确的原因是,我们可以在这个文件中看到场景大小最初设置为 1024(宽度)* 768(高度)。即使实际方向是纵向,这也会导致场景以横向模式显示。 我需要做的就是手动将 1024 * 768 更改为 768 * 1024(或 320*568 用于 4 英寸 iPhone)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-01
    • 1970-01-01
    • 2015-02-22
    • 2015-06-06
    相关资源
    最近更新 更多