UITableView section的header和footer高度设置
UITableViewStylePlain
不实现footer、header设置方法,默认无header、footer;
|
iOS 11
|
< iOS 11
|
viewForHeaderInSection
|
只实现此方法header高度为系统默认
|
只实现此方法header设置无效
|
heightForHeaderInSection
|
只实现此方法header设置无效
|
只实现此方法header高度设置有效
|
同时实现
viewForHeaderInSection 和
heightForHeaderInSection 时,
header高度设置有效
|
footer设置同header设置
UITableViewStyleGrouped
不实现footer、header设置方法,默认有header、footer,高度为系统默认;
|
iOS 11
|
< iOS 11
|
viewForHeaderInSection
|
只实现此方法header高度为系统默认
|
只实现此方法header高度为系统默认
|
heightForHeaderInSection
|
只实现此方法header高度为系统默认
|
实现此方法header高度设置有效,不可为0
|
同时实现
viewForHeaderInSection 和
heightForHeaderInSection 时,
header高度设置有效
|
footer设置同header设置
综上,
1、iOS 11设置 header 高度必须同时实现
viewForHeaderInSection 和
heightForHeaderInSection ;
2、iOS 11 之前版本只设置
heightForHeaderInSection 即可设置
header 高度,只是在
UITableViewStyleGrouped
时无法设置 header 高度为0,设置0时高度为系统默认高度