一、蘋果審核新規(guī)
背景:從2020年四月起提交至App Store的app,必須使用Xcode的Storyboard搭建啟動頁。在這條新規(guī)下,我們就不能使用原來的Assets.xcassets
??LaunchImage
來設置啟動圖了,必須換成LaunchScreen.storyboard來實現(xiàn)。
二、如何使用LaunchScreen.storyboard
搭建啟動圖呢?
首先,要在項目中進行配置。
1、在General—> App Icons and Launch Images—>Launch Screen File中選擇LaunchScreen
項目設置
2、選中LaunchScreen.storyboard,勾選
Use as Launch Screen
的選項LaunchScreen.storyboard
3、在LaunchScreen.storyboard中添加一個UIImageView的控件
添加控件
4、為新添加的UIImageView添加約束
添加約束
5、設置約束
選中上下左右的約束(點擊短橫線),并將數(shù)值都設為0,最后點擊Add按鈕,如下圖所示
設置約束
6、修改約束
經(jīng)過步驟5之后,效果如下:
留白問題
從上圖可以看出,默認的
Safe Area
會在iPhoneX系列的機型上,使啟動圖沒有覆蓋整個屏幕。7、解決留白問題
在左窗口選中底部約束—>點擊右側的First item—>選擇
Superview
—>將Constant
設置為0
,如下所示:修改底部約束
修改完成的效果如下:
修改底部約束
同樣的方式,修改頂部約束:
修改頂部約束
修改完后的效果:
修改完成
8、查看不同機型的效果(這里以背景色代替了圖片)
image.png
9、圖片適配問題
不同機型,啟動圖的大小和寬高比不一樣,如何解決呢?
由于系統(tǒng)類UIImageView,不能根據(jù)尺寸配置多張圖片。那是否能將啟動圖改為自定義的類呢?
答案是:在LaunchScreen.storyboard中不能使用自定義類
不支持自定義類
那么,如何解決啟動圖的適配問題呢?
場景1:啟動圖為全屏的圖片
解決辦法:選5.5寸的啟動圖(因為寬度最大),并將填充模式設為等比例填充,如下圖所示
圖片設置
場景2:啟動圖的內(nèi)容在底部
如鳳凰新聞,啟動圖為底部的文字logo,其余的留白。此時該圖片就不是全屏的。約束應該改為:寬度填充滿,高度=寬度*固定比例,再設置一個底部的約束,如下圖所示
鳳凰新聞
10、如果遇到了真機不生效的問題
如果遇到跑到真機上效果不對的問題,記得先刪除Xcode的緩存,再clean一下項目,最后卸載手機上的app,重新安裝即可(本人就遇到了在iPhoneX上不生效的問題)