在iOS15中,UITableView又新增了一个新的属性叫sectionHeaderTopPadding 。
会给每一个section header 增加一个默认的高度,当我们使用 UITableViewStylePlain 初始化 UITableView的时候,就会发现,系统给section header增高了个22像素。
解决方法:
if (@available(iOS 15.0, *)) { tableView.sectionHeaderTopPadding = 0; }
------------------------------
由于这里的sectionHeaderTopPadding是新增加api,在低版本Xcode会报错,这里可以加入宏判断Xcode支持的版本。
在Xcode 12.5.1中,你可以这么写
//因为12.5.1版本中最高也就定义了__IPHONE_14_5 //只要比它大的,就应该是Xcode 13了吧? //通过判断支持系统版本来确定是否执行,也算是解决了? #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_14_5 if (@available(iOS 15.0, *)) { self.tableView.sectionHeaderTopPadding = 0; } #endif

微信扫码查看本文
发表评论