You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS 15系统下如何消除UITableView中cell上方的多余空白

UITableView分组头部异常空白解决方案

该问题由iOS 15及以上系统为UITableView新增的默认属性sectionHeaderTopPadding导致,该属性默认值大于0,会在每个分组头部额外追加固定顶边距,不受原有tableView(_:heightForHeaderInSection:)设置的影响。
iOS表格视图截图:每个分组头部上方存在与表格背景色一致的空白间隙

修复方案

  • 全局生效(所有页面的UITableView统一关闭该边距):将以下代码加入AppDelegate的application(_:didFinishLaunchingWithOptions:)方法中
    UITableView.appearance().sectionHeaderTopPadding = 0
    
  • 单个页面生效:在当前页面初始化UITableView的代码段中加入以下逻辑
    // 适配iOS 15以下系统
    if #available(iOS 15.0, *) {
        tableView.sectionHeaderTopPadding = 0
    }
    

残留空白排查

如果修改后仍有空白,检查两个配置:

  1. 是否同步设置了tableView(_:heightForFooterInSection:)对应分组的高度为0,部分场景下上一分组的尾部空白会被误判为当前分组的头部空白
  2. 检查自定义Cell的自动布局约束,是否存在顶部多余边距

内容的提问来源于stack exchange,提问作者Amja

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 01:09:04