分組tableview,設置tableHeaderView后,第一個section的header不顯示原因

如題:問題場景描述

UITableView的style是Grouped,并且設置了tableHeaderView,第一個section(通過斷點可知方法 viewForHeaderInSection: 中,是從 section等于1開始的,實際應該是從0開始),此時第一個 section 沒有 header

解決方式

1、 初始化 tableview 時候,可以將style改為UITableViewStylePlain。
2、 如果保留原來分組樣式不變,在代理方法-tableView:heightForHeaderInSection:設置一個高度就可以了,不能用self.tableView.sectionHeaderHeight 的方法,也不能在storyboard里面設置。

究其原因應該是,tableview 為分組樣式,并且只設置了_tableView.sectionHeaderHeight = 48.;,沒有重寫代理方法-tableView:heightForHeaderInSection:在里面返回高度,造成的。

效果圖如下:
紅色框里面為 section 的 header,黃色框里面的為 tableHeaderView

問題圖1
修改后圖2
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容