#uitableview #interface-builder
#uitableview #interface-builder
Вопрос:
Я создаю пользовательскую ячейку таблицы с помощью InterfaceBuilder. Однако, когда я изменяю высоту в IB, изменения не отражаются в запущенной программе. Есть ли что-нибудь еще, что мне нужно сделать, кроме установки высоты в IB?
Заранее спасибо.
Ответ №1:
Недостаточно изменить высоту вашей пользовательской ячейки в IB. Высотой строки в UITableView можно управлять двумя способами
-
Установите
tableview.rowHeight
для свойства желаемое значение, если вы знаете, что все ячейки будут одинаковой высоты. Вы также можете установить это в IB, если я не ошибаюсь. -
Реализуйте метод UITableViewDelegate
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
Этот метод имеет приоритет, что означает, что если вы реализуете этот метод, то значение, которое вы задаете, tableView.rowHeight
игнорируется.
Комментарии:
1. и убедитесь, что у вас есть
tableview.delegate = self;
в вашем коде.