Objective C:SpriteKit - 错误的框架

时间:2014-11-23 14:05:39

标签: ios objective-c sprite-kit frame

我创建了一个4英寸屏幕的视网膜分辨率图像,尺寸为640x1136px。它没有正确扩展。为了调试,我决定让代码打印出self.view.frame的宽度和高度。结果是

width: 320 height: 480

这是不正确的,因为高度应该是568点(1136像素)。在objective-c spriteKit中处理错误的帧大小是什么?

编辑:

下面的代码

@implementation

UIImageView* menuImage;

(void)didMoveToView:(SKView *)view

中的

menuImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"menuImage"]];
menuImage.frame = self.view.frame;
NSLog(@"height: %f || width: %f", self.view.frame.size.height, self.view.frame.size.width);

编辑2:

提交少量测试结果

ScreenSize: {{0, 0}, {320, 480}}
SuperViewSize: {{0, 0}, {0, 0}}
SelfSize: {{0, 0}, {320, 480}}

1 个答案:

答案 0 :(得分:0)

在AMI289的帮助下(见评论),我们想出了如何修复它。

首先,我进入了项目设置,在General下,我从“启动屏幕文件”中删除了文本。然后,我添加了Launch Image Source。之后,我删除了启动图像集文件并创建了新文件。这使menuImage适合整个屏幕的正确分辨率。

注意:这可能仅在使用启动图像而不是启动文件时才有效,因为部分过程是删除启动屏幕文件文本字段中的文本。但是,我不确定该过程的哪个部分实际上已经解决了这个问题,所以无论如何它都可以工作。