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