1.iPhone X 上運(yùn)行有黑色區(qū)域問題
解決方案:
使用LaunchScreen來當(dāng)做入場(chǎng)頁 或者 修改Assets中的LaunchImage献汗,添加iPhoneX的Launch圖1125*2436(豎屏),注意這邊的圖片像素必須按要求來
2.navigationBar適配
iOS11前導(dǎo)航欄的高度是64王污,其中statusBar的高度為20罢吃,而iPhoneX的statusBar高度變?yōu)榱?4,如果是自定義的NavigationBar昭齐,這部分需要做相應(yīng)的適配尿招。
目前的想法是寫一個(gè)Util類,提供獲取導(dǎo)航欄高度的方法
@implementation?TestUtil
+?(CGFloat)navigationBarHeight?{
if(IS_iPhoneX)?{
return88.0f;
}
return64.0f;
}
@end
#define?IS_iPhoneX?([UIScreen?mainScreen].bounds.size.width?==375&&?[UIScreen?mainScreen].bounds.size.height?==812)
3.tabBar適配
iPhoneX的底部增加了虛擬Homeq區(qū)司浪,由于安全區(qū)域的原因默認(rèn)tabBar的高度由49變?yōu)?3泊业,增高了34把沼,所以自定義的底部TabBar也需要需改其適配方案啊易。
4.iOS11 API
SafeArea、contentInsetAdjustmentBehavior饮睬、adjustedContentInset
//?判斷系統(tǒng)版本租谈,系統(tǒng)API(這個(gè)是Xcode報(bào)警提示fix發(fā)現(xiàn)的??)
if(@available(iOS11.0,?*))?{
}else{
//?Fallback?on?earlier?versions
}
5.新增框架
新加入 SDK 的大的框架有兩個(gè),分別是負(fù)責(zé)簡(jiǎn)化和集成機(jī)器學(xué)習(xí)的 Core ML 和用來創(chuàng)建增強(qiáng)現(xiàn)實(shí) (AR) 應(yīng)用的 ARKit。
6. UINavigationBar新增屬性prefersLargeTitles(BOOL)
效果如圖:
7.Xcode 9實(shí)用新特性
A. 調(diào)試可以不用USB連接了
B. 模擬器可以多開