苹果审核新规:用LaunchScreen.storyboard设置启动页
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了苹果审核新规:用LaunchScreen.storyboard设置启动页相关的知识,希望对你有一定的参考价值。
参考技术A背景:从2020年四月起提交至App Store的app, 必须使用Xcode的Storyboard搭建启动页 。在这条新规下,我们就不能使用原来的 Assets.xcassets ➡️ LaunchImage 来设置启动图了,必须换成 LaunchScreen.storyboard 来实现。
首先,要在项目中进行配置。
1、在General—> App Icons and Launch Images—>Launch Screen File中选择LaunchScreen
2、选中LaunchScreen.storyboard,勾选 Use as Launch Screen 的选项
3、在LaunchScreen.storyboard中添加一个UIImageView的控件
4、为新添加的UIImageView添加约束
5、设置约束
选中上下左右的约束(点击短横线),并将数值都设为0,最后点击Add按钮,如下图所示
6、修改约束
经过步骤5之后,效果如下:
从上图可以看出,默认的 Safe Area 会在iPhoneX系列的机型上,使启动图没有覆盖整个屏幕。
7、解决留白问题
在左窗口选中底部约束—>点击右侧的First item—>选择 Superview —>将 Constant 设置为 0 ,如下所示:
修改完成的效果如下:
同样的方式,修改顶部约束:
修改完后的效果:
8、查看不同机型的效果(这里以背景色代替了图片)
9、图片适配问题
不同机型,启动图的大小和宽高比不一样,如何解决呢?
由于系统类UIImageView,不能根据尺寸配置多张图片。那是否能将启动图改为自定义的类呢?
答案是: 在LaunchScreen.storyboard中不能使用自定义类
那么,如何解决启动图的适配问题呢?
场景1:启动图为全屏的图片
解决办法:选5.5寸的启动图(因为宽度最大),并将填充模式设为等比例填充,如下图所示
场景2:启动图的内容在底部
如凤凰新闻,启动图为底部的文字logo,其余的留白。此时该图片就不是全屏的。约束应该改为:宽度填充满,高度=宽度*固定比例,再设置一个底部的约束,如下图所示
10、如果遇到了真机不生效的问题
如果遇到跑到真机上效果不对的问题,记得先删除Xcode的缓存,再clean一下项目,最后卸载手机上的app,重新安装即可(本人就遇到了在iPhoneX上不生效的问题)
以上是关于苹果审核新规:用LaunchScreen.storyboard设置启动页的主要内容,如果未能解决你的问题,请参考以下文章