Ios 目标C:SpriteKit-帧错误
我创建了一个4英寸屏幕的视网膜分辨率图像,大小为640x1136px。它没有适当地缩放。为了调试,我决定让代码打印self.view.frame的宽度和高度。结果是 宽度:320 身高:480 这是不正确的,因为高度应为568点1136像素。objective-c spriteKit中帧大小错误的处理方法是什么 编辑: 代码贴在下面 低于@implementation UIImageView*菜单图像 在voiddidMoveToView中:SKView*视图 编辑2: 提交少数测试的结果Ios 目标C:SpriteKit-帧错误,ios,objective-c,sprite-kit,frame,Ios,Objective C,Sprite Kit,Frame,我创建了一个4英寸屏幕的视网膜分辨率图像,大小为640x1136px。它没有适当地缩放。为了调试,我决定让代码打印self.view.frame的宽度和高度。结果是 宽度:320 身高:480 这是不正确的,因为高度应为568点1136像素。objective-c spriteKit中帧大小错误的处理方法是什么 编辑: 代码贴在下面 低于@implementation UIImageView*菜单图像 在voiddidMoveToView中:SKView*视图 编辑2: 提交少数测试的结果 Sc
ScreenSize: {{0, 0}, {320, 480}}
SuperViewSize: {{0, 0}, {0, 0}}
SelfSize: {{0, 0}, {320, 480}}
在AMI289 see comments的帮助下,我们找到了修复此问题的方法 首先,我转到项目设置,在General下,我从启动屏幕文件中删除了文本。然后,我添加了启动图像源。之后,我删除了启动映像集文件并创建了一个新文件。这使得菜单图像以正确的分辨率适合整个屏幕
注意:这可能仅在使用启动映像而不是启动文件时有效,因为部分过程是删除启动屏幕文件文本字段中的文本。但是,我不确定该过程的哪一部分确实解决了该问题,因此它可能仍然可以工作。您确定您没有在3.5设备/模拟器上意外检查它或在某个地方手动更改视图大小吗?您可以添加以下NSLog语句并发布其值吗?NSLog@ScreenSize:%@,NSStringFromCGRect[[UIScreen mainScreen]边界];NSLog@SuperViewSize:%@,NSStringFromCGRectself.view.superview.bounds;NSLog@SelfSize:%@,NSStringFromCGRectself.view.bounds;你能在4英寸模拟器上运行它,看看是否得到相同的结果吗?请尝试,在左侧的“导航器”上,转到“Images.xcsets”->“LaunchImage”,并确保你有一个4英寸的启动图像。我同意这听起来很奇怪,但看看这里
ScreenSize: {{0, 0}, {320, 480}}
SuperViewSize: {{0, 0}, {0, 0}}
SelfSize: {{0, 0}, {320, 480}}