UITableView顶部突然出现一块空白问题

简介: UITableView顶部突然出现一块空白问题

有一天突然测试和我说页面布局有问题,但是在我的测试机中并没有复现这个问题。但是在测试那边确实复现了。
经过调研,如果你发现你的tableview 的section header总是有一片空白,那是因为
在iOS15后。UITableView多了一个属性sectionHeaderTopPadding,该值默认为22。
我们只需要把这个值设置为0,就能解决顶部空白的问题。

一共有三种解决方式:

  1. 对于自己项目中的UITableView有自定义封装的话:
    /// iOS 15 UITableView顶部空白解决方案
    if (@available(iOS 15.0, *)) {
     self.sectionHeaderTopPadding = 0.0;
    } else {
     // Fallback on earlier versions
    }
    
  2. 全局设置
    /// iOS 15 UITableView顶部空白解决方案
    if (@available(iOS 15.0, *)) {
     UITableView.appearance.sectionHeaderTopPadding = 0.0;
    } else {
     // Fallback on earlier versions
    }
    
  3. 设置单独的页面
    if (@available(iOS 15.0, *)) {
     tableView.sectionHeaderTopPadding = 0.0;
    } else {
     // Fallback on earlier versions
    }
    
相关文章
微信分享报错 wxlog:Error:fail to load Keychain status:-25300 解决办法
微信分享报错 wxlog:Error:fail to load Keychain status:-25300 解决办法
3195 0
|
Swift iOS开发
iOS 用一个布局来解决嵌套问题—— UICollectionViewCompositionalLayout
iOS 用一个布局来解决嵌套问题—— UICollectionViewCompositionalLayout
iOS 用一个布局来解决嵌套问题—— UICollectionViewCompositionalLayout
使用SDAutoLayout实现控件根据内容进行宽度自适应和高度自适应
使用SDAutoLayout实现控件根据内容进行宽度自适应和高度自适应
210 2
|
编解码 iOS开发
IOS上架APP Store时预览图尺寸
IOS上架APP Store时预览图尺寸
1564 3
|
JSON Dart API
Flutter dio http 封装指南说明
本文介绍了如何实现一个通用、可重构的 Dio 基础类,包括单例访问、日志记录、常见操作封装以及请求、输出、报错拦截等功能。
386 2
Flutter dio http 封装指南说明
|
存储 Dart
Dart的Map类型
Dart的Map类型
172 0
使用序列化和反序列化函数archivedDataWithRootObject和unarchivedObjectOfClasses的使用和遇到问题及解决方案
使用序列化和反序列化函数archivedDataWithRootObject和unarchivedObjectOfClasses的使用和遇到问题及解决方案
435 0
|
开发框架 前端开发 Swift
SwiftUI的优缺点
SwiftUI的优缺点
533 0
|
程序员 UED iOS开发
SVProgressHUD和MBProgressHUD的优缺点与SVProgressHUD震动实现
SVProgressHUD和MBProgressHUD的优缺点与SVProgressHUD震动实现
611 0
|
缓存 移动开发 JavaScript
WKWebView对网页和js,css,png等资源文件的缓存机制及如何刷新缓存
WKWebView对网页和js,css,png等资源文件的缓存机制及如何刷新缓存
861 1