iOS11&iPhoneX适配&Xcode9打包注意事项
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显示不正常
还有的发现某些界面tableView的sectionHeader、sectionFooter高度与设置不符的问题,在iOS11中如果不实现-tableView:viewForHeaderInSection:和-tableView:viewForFooterInSection:,则-tableView:heightForHeaderInSection:和-tableView:heightForFooterInSection:不会被调用,导致它们都变成了默认高度,这是因为tableView在iOS11默认使用Self-Sizing,tableView的estimatedRowHeight、estimatedSectionHeaderHeight、estimatedSectionFooterHeight三个高度估算属性由默认的0变成了UITableViewAutomaticDimension,解决办法简单粗暴,就是实现对应方法或把这三个属性设为0。
4,适配网页加载不全下面有白边
if#available(iOS11.0,*){ webView.scrollView.contentInsetAdjustmentBehavior=.never }else{ }
5,适配iPhoneX不能铺满屏的问题
<1>给BrandAssets添加一张1125*2436大小的图片
打开Assets.xcassets文件夹,找到BrandAssets
右键ShowinFinder
添加一张1125*2436大小的图片
<2>修改Contents.json文件,添加如下内容
{ "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打包注意事项
xcode9打包版本只能是8.2及以下版本,或者9.0及更高版本
xcode9不支持8.3和8.4版本
xcode9新打包要在构建版本的时候加入1024*1024AppSoreicon
总结
以上所述是小编给大家介绍的iOS11&iPhoneX适配&Xcode9打包注意事项,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!