iOS

苹果官方紧急处理 (一) —— 强制更换启动图加载方式(一)

2020-04-11  本文已影响0人  刀客传奇

版本记录

版本号 时间
V1.0 2020.04.11 星期六

前言

苹果的政策一直在变,所以很多时候我们都需要根据政策及时变动,比如加苹果登录、UIWebView修改为WKWebView以及后面这个启动图片通过storyboard进行加载等,这一个专题就专门来处理苹果政策的变化。

问题提出

苹果要求:2020年June 30之前必须将启动方式通过storyboard进行加载。具体参考官方文档。或者可以直接看下面的截图。具体可以参考官方视频

注意:启动图如果设置的不正确,那么会影响自己App的主页内容。可能会产生拉伸等问题。


问题解决

这里首先是要新建一个storyboard,直接新建就行,同时老的启动方式也要删除(包括setting中的设置和asset中的图片资源)。

这里的LaunchImage要删除

删除以后就不会加载asset中的启动图。

如果报错可以参考 Xcode11中,删除LaunchImage报错

启动图的storyboard可以当做普通页面去处理了,拖进去一个imageview并进行约束。

下面就是处理新建的启动图的storyboard,有几种处理方案。

1. 只放一张图

这个有人这么做,就是放一张图,按比例进行填充aspect fill。好处就是资源文件只有一张图很省空间,缺点就是不同屏幕的尺寸那么由于比例扩张和收缩,那么会有部分信息显示不全。比如下面这张文章写的。

用launchscreen.storyboard适配启动图方法,这里面的ipad和小手机启动图下面的文字已经由于扩展超出了屏幕看不到了。

2. 加图片集多张图

这个是新建一个图片集image set里面放各种尺寸的iphoneipad的图片。

这个方案可以很完美不会有任何拉伸问题,而且做起来开发者的工期也不需要,直接就是图片的替换。缺点就是以后机器尺寸多了就要多放图,图都是高清的,即使进行了压缩,那包的体积也会加大很多。

具体可参考文章 LaunchScreen.storyboard启动图适配

3. 将素材分割进行分割加载,当成普通的sb文件进行处理

这个想法就是将启动图中的元素,包括logo,还有文字等单独切出来,然后像普通页面那样加载控件(UILabel、UIImageView)等。

比如这篇文章 用launchscreen.storyboard适配启动图方法(二),这解决了不同尺寸屏幕的适配问题以及包资源体积增大的问题。好处就是包体积小了适配各种机型更灵活(但是背景图还是不可避免的要失去部分显示效果),不好的就是以后要是换开屏图,那么就要开发者有一定的排期进行特殊处理,加大了工期。

综述,看上面三个方案,个人觉得最后这种方案是最靠谱的,同时也有兄弟公司这么做的,并且已经上线了,看着效果还可以吧。

后记

本篇主要讲述了强制更换启动图加载方式,感兴趣的给个赞或者关注~~~

上一篇 下一篇

猜你喜欢

热点阅读