iPhone UIViewController Lag
-
29-10-2019 - |
Pregunta
Tengo una página de 'detalles' donde estoy mostrando información de un club.La página es un UIViewController y consta de botones y etiquetas para lograr este aspecto (como pequeñas tablas agrupadas).Cuando cargo esta página en un dispositivo, se retrasa un poco, más que cualquier otra vista en mi aplicación.
Supongo que es porque tengo bastantes objetos en el controlador de vista.¿Alguien tiene alguna sugerencia sobre cómo reducir este retraso?¿O cómo lograr el aspecto de las 3 tablas más pequeñas como esta (agrupadas) de una manera diferente?
Gracias.
CAPTURA DE PANTALLA:
Solución
¿Podría intentar hacer celdas de tabla personalizadas y usar UITableView en su lugar?
Otros consejos
Puede hacer que la vista sea un UITableView usando el estilo UITableViewStyleGrouped
y luego crear mediante programación las celdas para cada fila.Anulando
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
le ofrece títulos como "Información de la reunión" y "Contacto", y anulación
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
le permite obtener el tamaño correcto en cada celda de la tabla.Si el texto de "Información general" no va a tener un tamaño constante, puede utilizar el
-sizeWithFont::(UIFont *)font
método de NSString en su implementación heightForRowAtIndexPath.
Es probable que el problema no sea el diseño de su interfaz.El dibujo de la interfaz de usuario suele ser bastante rápido.Las cosas que lo ralentizan son el acceso a los datos.Si tiene un gran conjunto de datos que está buscando, puede buscar formas de acelerarlo.