iOS11 适配问题

上线前遇到iOS11各种适配问题,意识到之前代码写得不严谨,甚至基类里面也常常用系统的默认处理;另外,对一些属性半知半解,导致适配时,花了不少时间。不再絮言,下面是我遇到的iOS11部分适配问题。

1.有关tableview

a.不适配现象:section头尾视图有很大间隙、不同section区的row上面的字体重叠

解决方法:tableview的代理方法中设置sectionHeader、sectionFooter的高度,viewForFooterInSection、viewForHeaderInSection 返回一个简单的view即可。

原因:iOS11 tableview一些默认的代理方法 跟之前的差异,要求大家写代码更严谨了。


b.不适配现象:tableview会上移或者下移

解决方法:_tableView.estimatedRowHeight=0.0f;

_tableView.estimatedSectionFooterHeight=0.0f;

_tableView.estimatedSectionHeaderHeight=0.0f;

self.extendedLayoutIncludesOpaqueBars = YES;

if (@available(iOS 11.0, *)) {

self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;

_tableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0);

_tableView.scrollIndicatorInsets = _tableView.contentInset;

}

原因:iOS11 self-sizing默认是开启的。estimated高度由iOS11 之前的0 变为UITableViewAutomaticDimension

2.window上层级问题

不适配现象:弹框不显示

解决方法:视图直接加window上面  [AppDelegate sharedAppDelegate].window

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容