我在iPhone 4中有一个应用程序,工作正常。现在我想将它迁移到5.我有一个startupviewcontroller用于显示带有xib的splash图像; xib是在Xcode 4.2中生成的,因此它有一个320 480的框架视图和一个带有图像的图像视图。现在我希望所有这些都能在iPhone 5中运行。为此,我将图像大小更改为640 * 1136,这是添加到该图像视图而不是640 * 960中使用的图像。我添加了
if([[UIScreen mainScreen] bounds].size.height == 480)
{
[self.view setFrame:CGRectMake(0,0,320,480 )];
}
else
{
[self.view setFrame:CGRectMake(0,0,320,568)];
backgroundimage.image=[UIImage imageNamed:@"Default-568h@2x.png"];
}
不工作。在图像之后,底部给了我一些空白区域。我也尝试过autoresizing mask。这也行不通。
有人可以让我脱离这个挖掘吗?
答案 0 :(得分:2)
查看代码,我会检查两件事: - 确保backgroundImage正确连接到笔尖。 - 删除要检索的图像的@ 2x关键字[UIImage imageNamed:@“Default-568h”]。将附加@ 2x以获取正确的文件。
除了您应该获得的工作,您还拥有有效的4英寸发射启动图像(Default-568h@2x.png)。
答案 1 :(得分:1)
我猜测backgroundImage
是UIImageView
,它是您控制器视图的子视图,在xib中设置为视图的完整大小。当您的应用在iPhone 5上运行时,它会自动为您设置视图的大小,但除非您设置自动调整大小,否则不会调整子视图的大小。请参阅我对this question的回答,了解如何执行此操作。