关于设置启动图片全部为横屏的方法:使用UILaunchImages
来设置图片
- 直接通过
LaunchScreen.storyboard
进行设置,我没有尝试过,因为项目在启动图片上面有相关的操作,所以该方法直接Pass掉了 - 使用
Assets.xcassets
中添加LaunchImage
的方式,发现系统只能指针对5.5寸和iPad的横屏进行设置,而无法设置4.7以及4寸的屏幕下的横屏图片.所以就有了一下的解决方案.
首先,取消系统默认设置的Launch Images Source
和 Launch Screen File
,全部清空.
- 这样系统才会去读取
info.Plist
中配置的启动图片的相关选项.
然后,在Info.plist
中添加如下的名为UILaunchImages
的key,类型为Array
<key>UILaunchImages</key>
<array>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>9.0</string>
<key>UILaunchImageName</key>
<string>LaunchImage-Landscape~iPhone</string>
<key>UILaunchImageOrientation</key>
<string>Landscape</string>
<key>UILaunchImageSize</key>
<string>{320, 480}</string>
</dict>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>9.0</string>
<key>UILaunchImageName</key>
<string>Default-Landscape-568h</string>
<key>UILaunchImageOrientation</key>
<string>Landscape</string>
<key>UILaunchImageSize</key>
<string>{320, 568}</string>
</dict>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>9.0</string>
<key>UILaunchImageName</key>
<string>LaunchImage-Landscape-667h~iPhone</string>
<key>UILaunchImageOrientation</key>
<string>Landscape</string>
<key>UILaunchImageSize</key>
<string>{375, 667}</string>
</dict>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>9.0</string>
<key>UILaunchImageName</key>
<string>LaunchImage-Landscape-736h~iPhone</string>
<key>UILaunchImageOrientation</key>
<string>Landscape</string>
<key>UILaunchImageSize</key>
<string>{414, 736}</string>
</dict>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>9.0</string>
<key>UILaunchImageName</key>
<string>LaunchImage-Landscape~iPad</string>
<key>UILaunchImageOrientation</key>
<string>Landscape</string>
<key>UILaunchImageSize</key>
<string>{768, 1024}</string>
</dict>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>9.0</string>
<key>UILaunchImageName</key>
<string>LaunchImage-Landscape~iPad-Pro</string>
<key>UILaunchImageOrientation</key>
<string>Landscape</string>
<key>UILaunchImageSize</key>
<string>{1024, 1336}</string>
</dict>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>9.0</string>
<key>UILaunchImageName</key>
<string>Default-568h</string>
<key>UILaunchImageSize</key>
<string>{320, 568}</string>
</dict>
</array>
-
想要适配所有的屏幕,则针对每一个不同分辨率的设备,都需要配置一个字典.(上面的设备尺寸非常全,你可以直接复制粘贴)
-
UILaunchImageSize
, 启动图片的尺寸 -
UILaunchImageName
, 加载的图片名称 -
UILaunchImageOrientation
, 设备朝向 -
UILaunchImageMinimumOSVersion
, 最低支持的系统版本
-
其中
UILaunchImageName
和UILaunchImageSize
是必须要设置的另外两个可以选择进行设置
具体每一个key的值该如何进行设置,具体可参考官方的文档UILaunchImages
当然你也可以根据我上面的命名方式来进行命名,只需要修改
UILaunchImageName
中的值即可.
- 图片必须放在工程文件的根目录下
- 关于上图出现两个568图片的解释
为了让你的产品打包上传的时候不报错.
因为系统要求你的启动图片必须支持iPhone5的尺寸,所以,你需要添加一个名为
Default-568h@2x.png
的图片,名称必须严格保持一致(这样做最好).当你缺失该格式图片的时候,编译会有警告,点击警告即可以添加相应尺寸的图片,当然内容需要你自己去替换(最好添加一张竖屏的图片),只需要保持名称一致即可.-
其次,你需要在数组中添加一个对应的字典,用于描述该图片的信息.详细的设置可以参考上述源码中最后一个字典,记住不要设置朝向.因为系统要求必须要设置竖屏状态下的
iPhone5
的图片,即支持4寸的设备<dict> <key>UILaunchImageMinimumOSVersion</key> <string>9.0</string> <key>UILaunchImageName</key> <string>Default-568h</string> <key>UILaunchImageSize</key> <string>{320, 568}</string> </dict>
- 通过该方法也可以设置启动图片的国际化,本篇文章设置横屏启动图片的技巧,也是参考该篇文章iOS启动页多语言