您的位置:首页 > 移动开发 > IOS开发

Launch Screen在iOS7/8中的实现

2015-12-08 10:51 756 查看
目前项目中需要解决的问题是:

兼容iOS7和iOS8,之前的版本不需要支持了
实现兼容3.5、4、4.7和5.5寸屏幕,竖屏的Lauch Screen

创建所需的PNG图片

有关iPhone6/6+相关尺寸见这里

需要如下尺寸图片:

用于iPhone6+的1242x2208,或者1080x1920,也就是Retina HD 5.5
用于iPhone6的750x1334,也就是Retina HD 4.7
用于4寸屏(iPhone5/5s)的640x1136,就是Retina 4
用于3.5寸(iPhone4/4s)的640x960,就是2x

使用LaunchImage

使用LaunchImage,可以兼容iOS7和iOS8。

因为iOS8也会调用
LaunchScreen.xib
,所以我的做法是直接删除它。就是这个文件:





然后,在
Images.xcassets
中创建一个
LaunchImage






需要在项目属性里,
launch Images Source
里设置为
LaunchImage






测试了一下:

iPhone6+使用的是Retina HD 5.5
iPhone6使用的是Retina HD 4.7
iPhone5s使用的是Retina 4
iPhone4s使用的是2x

使用LauchScreen.xib

这是Xcode6/iOS8的新功能,也就是说,这个步骤,是为了支持iOS8的,而不支持iOS7。其实在目前的项目用不上,不过做了技术准备,就写下来吧。

看到这个方形的xib文件,怪怪的,这是为了支持横屏和竖屏的,因为这个项目只需要竖屏,也可以这样:





不改也没关系。

Images.xcassets
里创建
backgroundImage






LaunchScreen.xib
中加一个图片,用刚刚创建的
backgroundImage


测试一下,iOS8下面的Launch Screen都没有问题了:

iPhone6+用的是3x
iPhone5s用的是Retina 4 2x
iPhone6和iPhone4s都是用的2x
因此我没有添加1x的图片,基本没用。

结论

目前比较好的方式是使用
Launch Image
的方式创建各种设备的图片文件,兼容iOS7/8
使用
LaunchScreen.xib
,功能更强大,但是仅支持iOS8,可能再过几年可以成为主流方法
源代码见这里:GitHub,是使用
LaunchImage
的方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: