Как изменить размер шрифта для текста в сгруппированном заголовке табличного представления? - PullRequest
1 голос
/ 09 сентября 2011

Я работаю с простым табличным представлением, но мне нужно изменить размер шрифта для текста в заголовке группы.

Я обнаружил этот вопрос о стековом потоке, ссылающийся на методы табличного представленияпереопределить, но я ищу пример того, как я мог бы изменить фактический размер шрифта заголовков, как только я реализую этот метод

Примечание: я могу изменить высоту самого заголовка, используя построитель интерфейса, ноРазмер шрифта, по-видимому, требует некоторой цели-c, чтобы изменить это

Заранее спасибо

Редактировать

вот что у меня пока есть - этоне выдает исключение, но сам заголовок не показывает размер текста или шрифта, который я установил на самом ярлыке

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    UIView* x = tableView.tableHeaderView;
    UILabel* y = [[UILabel alloc] initWithFrame:CGRectMake(5, 0, 310, 0)];
    y.font = [UIFont boldSystemFontOfSize:12.0];
    y.text = @"ha";
    [x addSubview:y];
    [y release];

    return x;
}

1 Ответ

2 голосов
/ 09 сентября 2011

Заголовок для таблицы может быть установлен на любой подкласс UIView. В частности, вы можете создать UILabel, установить текст с нужным размером шрифта, а затем сделать метку headerView.


Три потенциальных проблемы с вашим редактированием:

  1. Вы помните, чтобы реализовать tableView:heightForHeaderInSection:?

  2. Рост вашего UILabel в настоящее время 0.

  3. Когда вызывается этот метод, tableView.tableHeaderView может быть еще не определено.

Мой подход - объявить UILabel *headerLabel и добавить это к viewDidLoad:

headerLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 0, 310, 15)];
headerLabel.font = [UIFont boldSystemFontOfSize:12.0];
headerLabel.text = @"Testing";

Тогда есть

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

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    return headerLabel;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...