Какова высота по умолчанию UITableViewCell?

Я думал, что этой информации было бы легче найти: -)

Какова высота по умолчанию UITableViewCell? Он выглядит как 44 пикселя, но я бы предпочел быть уверенным.

Ответ 1

Это 44 пикселя. Определенно. Я никогда не забуду этот номер.

44px также является высотой по умолчанию для UIToolbar и UINavigationBar. (Оба переключаются на 32 пикселя при авторотации в альбомную ориентацию.)

Ответ 2

Если вы хотите использовать размер по умолчанию для любого устройства, которое вы можете использовать: UITableViewAutomaticDimension

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

    return UITableViewAutomaticDimension;
}

Хотя 44 пикселя в настоящее время по умолчанию это полезный метод, если ваше приложение полагается на установление по умолчанию.

Ответ 3

Когда style = UITableViewStyleGrouped, высота по умолчанию верхней и нижней ячеек фактически равна 45.0f (не 44.0f). И, если сгруппированная таблица - это только одна строка, высота ячейки будет 46.0f.

Ответ 4

Если вы хотите рассчитать это на лету, просто выделите ячейку таблицы фиктивного элемента и прочитайте ее высоту

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
int height = cell.frame.size.height ;

Таким образом, вы защищаетесь от изменений в будущих версиях iOS, хотя я предполагаю, что это маловероятно.

Ответ 5

"Когда style = UITableViewStyleGrouped, высота по умолчанию верхней и нижней ячеек фактически равна 45.0f (не 44.0f). И если сгруппированная таблица - только одна строка, высота ячейки будет 46.0f." Это неправильно! 44.0f на самом деле! Я просто проверяю это!

Ответ 6

Это звучит правильно. Но, чтобы быть уверенным, что вы можете загрузить интерфейс-конструктор, вставьте в проект UITableViewCell, затем проверьте свойства размера в окне Inspector. У меня нет моего MacBook со мной прямо сейчас, поэтому я не могу проверить. Но если вы не получите лучшего ответа от кого-то, вот как вы можете проверить себя.

Ответ 7

В iOS 12 высота по умолчанию на iPhone X-подобных устройствах (X, XS, XS Max, XR) составляет 49pt.

Другие устройства на iOS 12 по-прежнему имеют 44pt по умолчанию. Это тонкая разница, но это похоже на хорошее улучшение в прямом сравнении.

Если вы мне не верите, измерьте себя на этом скриншоте (не забудьте разделить на 3)...;)

Ответ 8

В Swift 4 и Swift 5 просто используйте:

UITableView.automaticDimension

Использование 44px не будет достаточным, потому что оно будет варьироваться в зависимости от плотности пикселей экрана.