2009-08-05 17 views
21

問候!我知道的UITableViewsectionHeaderHeight僅用於分組表,但我會問反正(如果有一些方法可以做到這一點並不明顯)...UITableView針對非分組表格的表頭高度

有沒有辦法改變NON-grouped table的部分標題高度(以及它的字體/大小)?

希望「是」或至少是「可能」......但擔心它可能是「不」。有了它,夥計們。

回答

49

是的。

使用該委託方法:

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { 
    return 44; 
} 

當然,改變爲適當。有當然,一個用於頁腳還有:

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { 
    return 44; 
} 
+0

謝謝!當然,我在iPhone OS 3.0中嘗試過,但它似乎沒有工作。它會保持相同的高度。但是,它在3.1中工作得很好,所以我懷疑我們會將這個問題記錄在我的「錯誤修復」或「試驗錯誤」上。 (總是很高興承認它是否是後者,但是我只是不確定_why_如果這不是一個錯誤修正,那麼它就不能工作了,即使我使用了sectionHeaderHeight,它也會被tableView:heightForHeaderInSection覆蓋:嗯...) – 2009-09-29 13:12:17

1

至少從iOS版9(測試)UITableView.sectionHeaderHeight正在爲平原表視圖(不分組),以及!

您將獲得默認標題高度(通常爲22.0)。

當然,表視圖委託可能已經在其tableView:heightForHeaderInSection:方法中定製了此默認值。

以下代碼段給出了一個定義節頭的高度:

CGFloat headerHeight = self.tableView.sectionHeaderHeight; 
if ([self.tableView.delegate respondsToSelector:@selector(tableView:heightForHeaderInSection:)]) { 
    // possibly custom header height 
    headerHeight = [self.tableView.delegate tableView:self.tableView heightForHeaderInSection:indexPathForCell.section]; 
}