UITableView 顶部空白总结

开发中总存在适配问题,而tableView最容易出现顶部留白问题,我明明设置好的,为啥tableView偏移了,心中十万个CNM。不要担心,一般由以下问题导致。

1.tableView的样式为Grouped [空白区高度:40]。

解决:设置tableHeaderView的view高度为0.01。

2.设置了tableView的header高度为0或者未设置[空白区高度:40]。

原因:由于系统tableView初始化的时候会将header高度设置为40,不懂为啥设置为0的时候都会设置为40。

解决:将header的高度设置为0.001f (如果设置为0则会系统默认为40)

3.Controller的automaticallyAdjustsScrollViewInsets属性设置问题[空白区20 或40(iPhone X)]。

原因:当Controller中有唯一ScrollView或器子类时【多个scrollView遮挡问题】,控制器会自动根据是否有导航栏和状态栏来设置scrollView的Inset边距,以达到最好的显示效果,防止遮挡。比如没有导航栏,会默认将scrollView从状态栏的bottom开始布局,所以就留下状态栏图层下为空白的,这就是automaticallyAdjustsScrollViewInsets的效果。

解决:

iOS7~iOS10

将Controller的self.automaticallyAdjustScrollViewIneset 置为NO(默认为yes)// 不用自动适应,直接将其置为全屏布局。

>= iOS11

self.contentInsetAdjustmentBehavior = XXXXNever(默认为XXXAutomatic) ;

4.tableView设置top约束布局基于safeArea 同时将self.automaticallyAdjustScrollViewInset设置为NO,就会出现空白[空白区20 或40(iPhone X)]

解决同3;

5.如果将导航栏的translucent设置为NO; contentInset会恢复为zero, 就会多出64空白。

综合解决:以上都无法解决可以尝试

手动将contentInset 设置为Zero,但是注意需要在viewDidApear 何 wiewDidLayout中设置有效。

UITableView 顶部空白总结相关推荐

  1. UITableView顶部多出一截空白问题

    参考https://www.jb51.net/article/82465.htm 1, self.automaticallyAdjustsScrollViewInsets = NO;          ...

  2. iOS:UIScrollView、UITableView、UICollectionView顶部空白问题

    UIScrollView.UITableView.UICollectionView顶部空白问题解决:配置下面代码即可解决. if (@available(iOS 11.0,*)) {self.coll ...

  3. 为什么在iOS7中,UITableView顶部的UITableViewStyleGrouped样式具有额外的填充

    本文翻译自:Why is there extra padding at the top of my UITableView with style UITableViewStyleGrouped in ...

  4. Android12 设置主界面和二级菜单顶部空白去除

    此 patch 来自地球边大佬 主界面顶部空白 packages/apps/Settings/res/values/dimens.xml + <dimen name="avatar_l ...

  5. iOS开发Storyboard中UITableView顶部默认空白 - 芒果iOS

    [主要内容:] 1. 问题描述 2.问题分析 3. 解决问题办法 一.问题描述 前两天开发的时候在StoryBoard中创建了一个UITableView,但是拖到Controller里边之后,UITa ...

  6. iOS开发-UITableView顶部图片下拉放大

    关于顶部图片下拉放大,在用户展示的个人中心显示用户个人头像信息,设置UITableView的headerView实现,UITableView继承自UIScrollView,同样的设置UIScrollV ...

  7. #65279导致页面顶部空白一行解决方法

    解决这个问题的两个方法 1. 模板文件生成html文件之后会在body开头处加入一个可见的控制符&#65279,导致页面头部会出现一个空白行.原因是页面的编码是UTF-8 + BOM. 这种编 ...

  8. 解决 iOS 11 webview 顶部空白条的问题

    在 iOS 11 使用 webview 发现顶部会有一个空白条,怎么也去不掉,通过设置 contentInsetAdjustmentBehavior = UIScrollViewContentInse ...

  9. 导致页面顶部空白一行解决方法

    2019独角兽企业重金招聘Python工程师标准>>> 模板文件生成html文件之后会在body开头处加入一个可见的控制符&#65279,导致页面头部会出现一个空白行.原因是 ...

最新文章

  1. 关于mysql的表名/字段名/字段值是否区分大小写的问题
  2. react学习(68)--ant design inputNumber
  3. 这50个思维方法,深刻改变了我的人生
  4. 阿里云物联网边缘计算加载MQTT驱动
  5. Java实现计算器的基本功能
  6. 【BZOJ5093】图的价值
  7. 1.输入复制到输出,并将其中连续多个空格用一个空格代替
  8. hencoder学习自定义view(1)
  9. MAC常用终端命令行
  10. 计算机管理 网络连接服务,WZC服务未开启无法连接网络 解决方法及步骤
  11. 最优阵列处理技术/Harry L. Van Trees——学习笔记2
  12. Spring的事件处理
  13. ACwing 1018 最低通行费
  14. sd和sem啥区别_生物统计学-标准差(SD)和标准误(SEM)有何区别.pdf
  15. 记一次小白调参baseline——NLP中文预训练模型泛化能力比赛
  16. Excel如何生成条形码图片?
  17. VSCode删除多余空行快捷方法
  18. 阿里面经总结:阿里三面+交叉面+hr面试
  19. 2021-ICPC银川站赛后总结
  20. centos8 编译安装黑客矩阵特效软件cmatrix

热门文章

  1. Centos6安装Zabbix3.4
  2. 0513JS基础:数组内置方法、数学函数、时间函数
  3. Linux下用户组、文件权限详解
  4. ngx_lua中的协程调度(三)
  5. html5中上传图片
  6. AgileEAS.NET平台开发实例-药店系统-准备开发环境(上)
  7. [笔记].关于Nios II的数据类型的一点想法
  8. C++析构函数不能失败的4个理由
  9. 第五章 Spring进阶-注解方式实现AOP(1)
  10. 模板 - 数学 - 数论 - 莫比乌斯反演 - 2