iOS11 tableView内容向下偏移20pt或向下偏移64pt的问题?

错误原因:
默认情况下self.extendedLayoutIncludesOpaqueBars = NO 扩展布局不包含导航栏,默认情况下self.automaticallyAdjustsScrollViewInsets = YES 自动计算滚动视图的内容边距
自定义的navigationbar,隐藏掉系统的navigationbar,SafeAreaInsets值为(20,0,0,0)
系统的navigationbar,隐藏掉系统的navigationbar,SafeAreaInsets值为(64,0,0,0)
解决办法:

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

// 设置tableView的内边距(能够显示出导航栏和tabBar下覆盖的内容)
_tableView.contentInset = UIEdgeInsetsMake(64, 0, 49, 0);

// 设置内容指示器(滚动条)的内边距
_tableView.scrollIndicatorInsets = _tableView.contentInset;

原文链接

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 语:本文主要是对iOS 11下APP中tableView内容下移20pt或下移64pt的问题适配的一个总结。内容包...
    西门淋雨阅读 724评论 0 1
  • iOS 11适配源码 Demo地址 安全区域的适配 用Xcode 9 创建storyboard或者xib时,最低版...
    Bytesking阅读 6,596评论 5 24
  • 适配iOS11 🍎苹果官方文档🍎苹果官方视频为了挣钱...哦😯不是,为了广大中国的开发者,苹果官方文档出了好多中文...
    philiha阅读 1,180评论 1 50
  • 只有更低,没有最低。这八个字是老生常谈的,意思是不管你价格定的多便宜,客户都会认为还有可以降的空间,不断的杀价,而...
    Msf阅读 244评论 0 0
  • 『通过一双西方人的眼,来看中国画。』 《图说中国绘画史》是由美国汉学家高居翰(本名James Cahill)所写,...
    orit阅读 3,577评论 0 1