высота ячейки tableView ... как ее настроить? - PullRequest
16 голосов
/ 17 сентября 2010

Можно ли изменить высоту только одной ячейки в сгруппированном табличном представлении?
У меня есть табличное представление с 2 секциями из 3 и 2 строк ... Я бы изменил высоту строки второй строки второго раздела ...

Как я могу это сделать?
Спасибо!

Ответы [ 4 ]

53 голосов
/ 17 сентября 2010

Вы можете посмотреть на этот метод:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

В вашем случае код должен выглядеть так:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
   if (indexPath.section == 1 && indexPath.row == 1) {
      return SPECIAL_HEIGHT;
   }
   return NORMAL_HEIGHT;
}

Более подробную информацию о методе вы можете найти здесь

5 голосов
/ 04 февраля 2016

В iOS 8 и выше мы можем использовать Ячейку динамического просмотра таблицы Высота.

Используя эту функцию UITableviewCell, получаем ее высоту из ее содержимого, и мыне нужно писать heightForRowAtIndexPath

Все, что мне нужно сделать в viewDidLoad ()

tableView.estimatedRowHeight = 44.0;
tableView.rowHeight = UITableViewAutomaticDimension;

Если cell содержит uilabel.затем примените ограничения к uilabel

enter image description here

Убедитесь, что вы изменили Label --Lines-- на 0

enter image description here

Ячейка будет автоматически расти с содержанием uilabel:

enter image description here

1 голос
/ 17 сентября 2010

Вы можете реализовать следующий метод для возврата высоты строки по заданному пути индекса:

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableViewDelegate_Protocol/Reference/Reference.html%23//apple_ref/occ/intfm/UITableViewDelegate/tableView:heightForRowAtIndexPath:

0 голосов
/ 17 сентября 2010

Взгляните на

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

. Для указательного пути просто проверьте, для какой строки и секции и отрегулируйте высоту соответственно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...