iOS11&iPhoneX適配&Xcode9打包注意事項(xiàng)

1,適配UITableView

if#available(iOS11.0, *) {

self.contentInsetAdjustmentBehavior= .never

self.estimatedRowHeight=0

self.estimatedSectionHeaderHeight=0

self.estimatedSectionFooterHeight=0

}else{

}

2,適配UIScrollView

if#available(iOS11.0, *) {

scrollView?.contentInsetAdjustmentBehavior= .never

}else{

}

3,UITableView中的sectionHeader或者Footer顯示不正常

還有的發(fā)現(xiàn)某些界面tableView的sectionHeader、sectionFooter高度與設(shè)置不符的問題,在iOS11中如果不實(shí)現(xiàn)-tableView: viewForHeaderInSection:和-tableView: viewForFooterInSection:,則-tableView: heightForHeaderInSection:和- tableView: heightForFooterInSection:不會(huì)被調(diào)用,導(dǎo)致它們都變成了默認(rèn)高度,這是因?yàn)閠ableView在iOS11默認(rèn)使用Self-Sizing,tableView的estimatedRowHeight、estimatedSectionHeaderHeight、estimatedSectionFooterHeight三個(gè)高度估算屬性由默認(rèn)的0變成了UITableViewAutomaticDimension,解決辦法簡單粗暴,就是實(shí)現(xiàn)對(duì)應(yīng)方法或把這三個(gè)屬性設(shè)為0。

4,適配網(wǎng)頁加載不全下面有白邊

if#available(iOS11.0, *) {

webView.scrollView.contentInsetAdjustmentBehavior= .never

}else{

}

5,適配iPhoneX不能鋪滿屏的問題

<1>給Brand Assets添加一張1125*2436大小的圖片

打開Assets.xcassets文件夾,找到Brand Assets

右鍵Show in Finder

添加一張1125*2436大小的圖片

<2>修改Contents.json文件,添加如下內(nèi)容

{

"extent" : "full-screen",

"idiom" : "iphone",

"subtype" : "2436h",

"filename" : "1125_2436.png”,

"minimum-system-version" : "11.0",

"orientation" : "portrait",

"scale" : "3x"

}

6,適配iPhoneX

//適配iPhoneX

letLL_iPhoneX = (kScreenW == Double(375.0) && kScreenH == Double(812.0) ?true:false)

letkNavibarH = LL_iPhoneX ? Double(88.0) : Double(64.0)

letkTabbarH = LL_iPhoneX ? Double(49.0+34.0) : Double(49.0)

letkStatusbarH = LL_iPhoneX ? Double(44.0) : Double(20.0)

7,xcode9打包注意事項(xiàng)

xcode9打包版本只能是8.2及以下版本,或者9.0及更高版本

xcode9不支持8.3和8.4版本

xcode9新打包要在構(gòu)建版本的時(shí)候加入1024*1024 AppSore ? icon


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容