如何避免在自定义初始屏幕上调整图像大小

时间:2013-11-27 15:30:54

标签: ios iphone iphone-5

您好我在创建具有自定义初始屏幕的iOS应用程序时,自定义启动画面会在iOS的默认启动画面后加载并加载一些加载进度。我确实将默认图像设置为自定义初始屏幕的背景,但自定义初始屏幕图像在顶部和底部缩小了尺寸,请查看屏幕截图,请从此处获取

提前感谢。

Ios的默认屏幕

enter image description here

我的自定义初始屏幕

enter image description here

2 个答案:

答案 0 :(得分:0)

尝试explicitly detecting screen size并使用特定资源进行4英寸屏幕。

if ([[UIScreen mainScreen] bounds].size.height == 568) {
    // Present an image formatted for iPhone 5
}
else {
    // Present an image formatted for a 3.5" iPhone
}

根据top answer here,iOS似乎不会尊重附加-568h@2x的资源,而不是实际的启动图像。

修改
从底部的重复图像中可能看到[UIColor colorWithPatternImage:]。使用上述方法,请使用[UIImage imageNamed:]

答案 1 :(得分:0)

谢谢大家,非常感谢。

最后我找到了一个技巧,

首先,您应该在启动期间隐藏状态栏。只需执行此Xcode - >项目目标 - >摘要标签 - >状态栏 - >检查能见度。

然后,设置

[imgsplash setImage:[UIImage imageNamed:@"Default"]];

imgsplash.frame = CGRectMake([[UIScreen mainScreen] bounds].origin.x,
                             [[UIScreen mainScreen] bounds].origin.y,
                             [[UIScreen mainScreen] bounds].size.width,
                             [[UIScreen mainScreen] bounds].size.height);

imgsplash.autoresizingMask =  UIViewAutoresizingFlexibleBottomMargin |  
                              UIViewAutoresizingFlexibleTopMargin | 
                              UIViewAutoresizingFlexibleLeftMargin |
                              UIViewAutoresizingFlexibleRightMargin;

通过给出[UIImage imageNamed:@“Default”]让图像命名可以选择正确的图像。

感谢。