Следующий код повторяет то, что вы показали выше. Вместо создания ярлыка и его возврата я создал простой UIView, который представлял собой произвольную жестко кодированную высоту (вы можете изменить ее в соответствии с вашими потребностями), а затем создал ярлык и добавил ярлык в представление, возвращая чтобы вы могли центрировать метку в представлении, как это было при создании фрейма. Установив количество строк в 0, вы эффективно говорите этикетке, что будет несколько строк, и я устанавливаю маску авторазмера на ярлыке, чтобы, если просмотр поворачивается, текст по-прежнему будет оставаться центрированным в представлении с добавлением 10 точек на любом боковая сторона. Вы также захотите, чтобы вы вернули соответствующий heightForFooterInSection, если вы решили добавить что-то ниже, позже он не будет перекрывать ваш нижний колонтитул.
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
UIView *footerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 80)];
UILabel *explanationLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 0, self.view.frame.size.width - 20, 80)];
explanationLabel.textColor = [UIColor darkGrayColor];
explanationLabel.numberOfLines = 0;
explanationLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth;
explanationLabel.text = @"Create a shortcut that will automatically expand into the word or phrase as you type.";
[footerView addSubview:explanationLabel];
return footerView;
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
return 80;
}
Дал мне это:
Спасибо, это сработало! То, что мне не хватало, было то, что стиль представления таблицы должен быть «сгруппирован», иначе нижний колонтитул не будет автоматически обертываться – marsant
@Jesse: Как я могу изменить выравнивание текста нижнего колонтитула? Есть идеи? – Nit
@Nit In Interface Builder, создайте пользовательский вид нижнего колонтитула, перетащив UIView в нижнюю часть представления таблицы. Добавьте UILabel в нижний колонтитул и установите выравнивание UILabel. – Jesse