2009-08-05 25 views
21

Chúc mừng! Tôi biết rằng UITableViewsectionHeaderHeight chỉ được sử dụng cho các bảng nhóm, nhưng tôi sẽ yêu cầu nào (trong trường hợp có một số cách để làm điều này mà không phải là rõ ràng) ...Chiều cao tiêu đề phần UITableView cho bảng không được nhóm

Có cách nào để thay đổi chiều cao tiêu đề phần (và với nó, phông chữ/kích thước) cho một bảng NON được nhóm?

Hy vọng "có" hoặc ít nhất là "có thể" ... nhưng sợ nó có thể là "không". Có nó, folks.

Trả lời

49

Có.

Sử dụng phương pháp đại biểu này:

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

Tất nhiên, thay đổi cho phù hợp. Có tất nhiên một cho chân cũng như:

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

Cảm ơn! Tất nhiên, tôi đã thử rằng trong hệ điều hành iPhone 3.0, nhưng nó dường như không hoạt động. Nó sẽ chỉ ở cùng độ cao. Tuy nhiên, nó hoạt động tốt trong 3,1, vì vậy tôi nghi ngờ chúng tôi phấn này lên đến "sửa lỗi" hoặc "lỗi thí điểm" trên một phần của tôi. (Luôn luôn vui vẻ thừa nhận nếu đó là sau này, nhưng tôi chỉ không chắc chắn _why_ nó đã không được làm việc trước đó nếu điều này không phải là một sửa chữa lỗi.Thậm chí nếu tôi đã sectionHeaderHeight trong chơi, nó sẽ được ghi đè bởi tableView: heightForHeaderInSection: Hmm ...) –

1

Ít nhất kể từ khi iOS 9 (thử nghiệm) UITableView.sectionHeaderHeight đang làm việc cho xem bảng đơn giản (không phân nhóm) cũng!

Bạn sẽ nhận được chiều cao tiêu đề mặc định (thường là 22,0).

Tất nhiên, chế độ xem bảng có thể đã tùy chỉnh giá trị mặc định này trong phương thức tableView: heightForHeaderInSection:.

Đoạn mã dưới đây cho biết chiều cao của một tiêu đề phần định nghĩa:

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]; 
} 
Các vấn đề liên quan