欢迎光临朱凯的个人博客!
朱凯,a3.work

IOS11兼容的几个问题

 发布时间: 2017-12-23 18:48      原创:  朱凯      评论: .       .人查看

UI

iPhoneX状态栏由20px变成了44px, 导航栏高度不变44px,UITabBar由49px变成了83px。

#define KStatusH  [[UIApplication sharedApplication] statusBarFrame].size.height
#define KIsiPhoneX  ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO)

tableView

iOS11后运行tableView向下偏移64px或者20px, 因为iOS11废弃了automaticallyAdjustsScrollViewInsets, 而是给UIScrollView增加了contentInsetAdjustmentBehavior属性。避免这个坑的方法是要判断

if(@available(iOS 11.0, *)) {
    _tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}else{
    self.automaticallyAdjustsScrollViewInsets = NO;
}

tableView的sectionHeader、sectionFooter高度设置无效(因为estimatedRow,estimatedSectionHeader,estimatedSectionFooter默认值由0变成了UITableViewAutomaticDimension)

_tableView.estimatedRowHeight = 0;
_tableView.estimatedSectionHeaderHeight = 0;
_tableView.estimatedSectionFooterHeight = 0;

转载请注明来源:   IOS11兼容的几个问题  - 朱凯博客

上一篇:SDWebImageOptions 下一篇:ios中URL编码
分享是一种快乐,也是一种美德:
¥打开支付宝,扫码领红包¥ 红包

支付宝 aliPay

微信 wxPay