Ответов (8)8
Если вы хотите рассчитать это на лету, просто выделите фиктивную ячейку таблицы и считайте ее высоту.
UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
int height = cell.frame.size.height ;
Таким образом вы защитите себя от изменений в будущих версиях iOS, хотя я полагаю, что это маловероятно.
Если вам нужен размер по умолчанию на любом устройстве, вы можете использовать: UITableViewAutomaticDimension
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return UITableViewAutomaticDimension;
}
Хотя 44 пикселя в настоящее время является значением по умолчанию, это полезный метод, если ваше приложение использует значение по умолчанию.
В iOS 12 высота по умолчанию на устройствах iPhone X (X, XS, XS Max, XR) составляет 49 пунктов .
Другие устройства на iOS 12 по-прежнему имеют значение 44pt по умолчанию. Это небольшая разница, но при прямом сравнении она кажется хорошим улучшением.
Если не поверите, измерьте сами на этом скриншоте (не забудьте разделить на 3) ...;)
Звучит примерно правильно. Но чтобы убедиться, что вы можете загрузить построитель интерфейсов, добавить UITableViewCell в проект, а затем проверить свойства размера в окне инспектора. У меня сейчас нет с собой MacBook, поэтому я не могу проверить. Но если вы не получите от кого-то лучшего ответа, вы можете проверить это сами.