Pensé que esta información habría sido más fácil de encontrar :-)
¿Cuál es la altura predeterminada de un UITableViewCell? Parece 44 píxeles, pero preferiría estar seguro.
fuente
Pensé que esta información habría sido más fácil de encontrar :-)
¿Cuál es la altura predeterminada de un UITableViewCell? Parece 44 píxeles, pero preferiría estar seguro.
Son 44 píxeles. Seguro. Nunca olvidaré ese número.
44px es también la altura predeterminada para UIToolbar y UINavigationBar. (Ambos cambian a 32px cuando se autorotata a orientación horizontal)
Si desea la dimensión predeterminada en cualquier dispositivo que pueda usar: UITableViewAutomaticDimension
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return UITableViewAutomaticDimension;
}
Aunque 44 píxeles es actualmente el predeterminado, este es un método útil si su aplicación se basa en tener el valor predeterminado establecido.
UITableView.automaticDimensions
Swift 4
Cuando style = UITableViewStyleGrouped
, la altura predeterminada de las celdas superior e inferior es en realidad 45.0f
(no 44.0f
). Y, si la tabla agrupada es solo una fila, la altura de la celda será 46.0f
.
Si desea calcular esto sobre la marcha, simplemente asigne una celda de tabla ficticia y lea su altura
UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
int height = cell.frame.size.height ;
De esta manera te defiendes de los cambios en futuras versiones de iOS, aunque supongo que es poco probable.
"Cuando style = UITableViewStyleGrouped, la altura predeterminada de las celdas superior e inferior es en realidad 45.0f (no 44.0f). Y, si la tabla agrupada es solo una fila, la altura de la celda será 46.0f". ¡¡Está incorrecto!! ¡44.0f de hecho! ¡Solo lo pruebo!
Eso suena bien. Pero para asegurarse de que puede cargar el generador de interfaces, coloque un UITableViewCell en el proyecto y luego verifique las propiedades de tamaño en la ventana del Inspector. No tengo mi MacBook conmigo en este momento, así que no puedo verificarlo. Pero si no obtiene una mejor respuesta de alguien, así es como puede verificarlo usted mismo.
En Swift 4 y Swift 5 simplemente use:
UITableView.automaticDimension
Usar 44px no será suficiente porque variará con las diferentes densidades de píxeles de la pantalla.
En iOS 12, la altura predeterminada en dispositivos similares al iPhone X (X, XS, XS Max, XR) es de 49 puntos .
Otros dispositivos en iOS 12 todavía tienen 44 puntos por defecto. Es una diferencia sutil, pero se siente como una buena mejora en comparación directa.
Si no me crees, mide por ti mismo en esta captura de pantalla (no olvides dividir por 3) ...;)