关于适配iOS11和iPhoneX的一些事

 更新时间:2017年10月23日 11:06:59   作者:随风  
随着iOS11和xcode9刚开始正式发布,小编也迫不及待的更新了xcode9,手机也顺利更新到iOS,也终于见到iPhone X 的真面,怎么适配是个问题,下面这篇文章主要给大家介绍了关于适配iOS11和iPhoneX的一些事,需要的朋友可以参考下。

前言

众所周知iOS11正式版终于来了,最近也把app适配了一下,其实也不是很麻烦,来看看我做的一些操作,话不多说了,来一起看看吧。

1、UITableView、UICollectionView的变化

tableView在iOS11默认使用Self-Sizing,tableView的estimatedRowHeight、estimatedSectionHeaderHeight、 estimatedSectionFooterHeight三个高度估算属性由默认的0变成了UITableViewAutomaticDimension,所以当你pop回来的时候发现tableView自己动了,钥匙胚关掉他们就行了,collectionView也是一样的

if (@available(iOS 11.0, *)) {
 tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
 //其实验证上面一句就行了,下面这三句比较极端
 tableView.estimatedRowHeight = 0;
 tableView.estimatedSectionHeaderHeight = 0;
 tableView.estimatedSectionFooterHeight = 0;
}
 
//swift写法
if #available(iOS 11.0, *) { 
 tableView.contentInsetAdjustmentBehavior = .never 
} else { 
 self.automaticallyAdjustsScrollViewInsets = false 
} 

2、iPhoneX来袭

由于iPhoneX出来了,屏幕太大,没有HOME键,出现了safeArea的概念,就是安全使用的区域嘛,所以如果你使用了Masonry,那么你需要适配safeArea

if (@available(iOS 11.0, *)) {
 make.edges.equalTo()(self.view.safeAreaInsets)
} else {
 make.edges.equalTo()(self.view)
}

另外你会发现iPhoneX上启动之后tabbar上移了,其实是启动图太小啦,赶紧勾选iOS 8.0 and later Portrait ,然后来张来张3x(1125 * 2436)的启动图放上就OK了。

当然还有其他很多变化呢,比如状态栏加导航栏不再是64了等等,问题多多呀,慢慢研究。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

最新评论