在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
微信扫码查看本文
发表评论