Вы пробовали tableView:heightForRowAtIndexPath:
из UITableViewDelegate
?
Вы можете установить высоту строки равной 71, внедрив tableView:heightForRowAtIndexPath:
в своем делегате UITableView
(тот, кто поддерживает протокол UITableViewDelegate
).
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return 71.0;
}
Сначала вы должны установить делегат вашего tableView.Делегат должен соответствовать протоколу UITableViewDelegate
.Допустим, у нас есть TableDelegate
класс.Чтобы соответствовать протоколу UITableViewDelegate
, в декларации он должен быть в квадратных скобках:
...
@interface TableDelegate : UIViewController <UITableViewDelegate>
...
or
@interface TableDelegate : UIViewController <some_other_protocol, UITableViewDelegate>
Затем вы устанавливаете делегата:
...
// create one first
TableDelegate* tableDelegate = [[TableDelegate alloc] init];
...
self.tableView.delegate = tableDelegate;
В конце вы должныреализовать метод tableView:heightForRowAtIndexPath:
в реализации TableDelegate
:
@implementation TableDelegate
...
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return 71.0;
}
...
@end
rowHeight
Просто для пояснения, использование rowHeight
должно работать очень хорошо и работать лучше, чем константа, возвращенная из -tableView:heightForRowAtIndexPath:
как отмечает Хавьер Сото в комментариях.Также обратите внимание, что если ваш UITableView имеет делегат, возвращающий высоту в наборе свойств -tableView:heightForRowAtIndexPath:
и rowHeight
, предыдущее значение учитывается.