上周,蘋果發(fā)布了三款新的 iPhone 設(shè)備政供,它們的屏幕數(shù)據(jù)分別如下:
iPhone XS: 5.8 英寸尝苇,375pt * 812pt (@3x)闽坡;
iPhone XR: 6.1 英寸,414pt * 896pt (@2x)槽驶;
iPhone XS Max: 6.5 英寸,414pt * 896pt (@3x);
在國外的 PaintCode 網(wǎng)站上里初,有一篇文章《The Ultimate Guide To iPhone Resolutions》整理了包括從第一代 iPhone 到最新發(fā)布的 iPhone XS Max 等所有 iPhone 設(shè)備的屏幕數(shù)據(jù),包括:開發(fā)尺寸(points)忽舟、物理尺寸(pixels)以及實(shí)際渲染像素双妨、1倍/2倍/3倍模式等,如圖 1 所示(建議大圖查看更加清晰)叮阅。
從圖中數(shù)據(jù)我們可以總結(jié)以下幾點(diǎn):
5.8 英寸的 iPhone X/XS 與 6.1 英寸的 iPhone XR 和 6.5 英寸的 iPhone XS Max 的屏幕寬高比是一致的刁品,約為
0.462
;iPhone X/XS 的屏幕寬度(開發(fā)尺寸)與 4.7 英寸的 iPhone 8 相同浩姥,都為 375pt挑随,只是在高度上增加了 145pt;
iPhone XR 和 iPhone XS Max 的屏幕寬度(開發(fā)尺寸)與 5.5 英寸 iPhone 8 Plus 相同及刻,都為 414pt镀裤,只是在高度上增加了 160pt;
因此缴饭,設(shè)計(jì)師在出圖時(shí)暑劝,仍然可以以 iPhone 8 和 iPhone 8 Plus 的屏幕寬度為基準(zhǔn)分別進(jìn)行 UI 布局,而對(duì)于不同高度的屏幕只要在縱向上進(jìn)行內(nèi)容延伸即可颗搂。
適配新的 iPhone X 設(shè)備
此外担猛,我們發(fā)現(xiàn),對(duì)于未進(jìn)行新屏幕尺寸適配的工程丢氢,直接編譯傅联,在新設(shè)備 iPhone XR 和 iPhone XS Max 上運(yùn)行,它們是以放大模式自動(dòng)適配的(以 5.8 寸的 iPhone X 屏幕為基準(zhǔn)等比例放大)疚察,此時(shí)在代碼中獲取到的屏幕寬高都為 375pt * 812pt蒸走。
那么如何正確適配新的屏幕尺寸呢?
如果你的工程是以
LaunchScreen.storyboard
作為啟動(dòng)頁貌嫡,則只需要在 Xcode 10 下重新編譯工程即可比驻;如果你的工程是通過配置
Assets.xcassets
里的LaunchImage
不同尺寸的啟動(dòng)圖片作為啟動(dòng)頁该溯,則你需要新增兩張 828px * 1792px 和 1242px * 2688px 分辨率的圖片,如圖 2 所示别惦。
最后提一句
xcode10默認(rèn)使用的是新的編譯器狈茉,相比之前的編譯系統(tǒng)會(huì)慢,如果想編譯快的話建議選用Legacy Build System