¿Cuál es la mejor manera de optimizar la velocidad de desplazamiento al desarrollar una aplicación para iPhone?

Por supuesto, hay muchos pequeños ajustes de rendimiento que puede usar, pero conozco dos formas principales de acelerar realmente las tablas.

1. Reutiliza las celdas de tu tabla
Este es bastante sencillo. En tableView: cellForRowAtIndexPath: asegúrese de que está intentando quitar una celda antes de crear una nueva. Esto te ahorrara mucho tiempo. Si no está familiarizado con la eliminación de celdas, debería verse así:

  #define MY_CELL_ID @ "MyCellId"

 UITableViewCell * cell = [table dequeueReuseableCellWithIdentifier: MY_CELL_ID];
 si (! celda)
     celda = [[[UITableViewCell alloc] initWithReuseIdentifier: MY_CELL_ID] autorelease]; 

Si está reutilizando celdas, asegúrese de realizar algún tipo de restablecimiento en el contenido de la celda antes de configurarla con nuevos datos y devolverlos, para evitar efectos secundarios extraños de los datos antiguos que se reutilizan en nuevas celdas.

2. Dibuja tu propio contenido
Si las celdas de su tabla tienen muchas subvistas, serán lentas, especialmente si tiene mucha transparencia. Lo que puede hacer es crear una subclase de UIView que sobrecargue drawRect: y haga todo su propio dibujo manual en lugar de usar el material de subvista automática. Probablemente aún desee incluir UIImageViews como subvistas, pero cualquier texto, gradientes, fondos, líneas, etc., se pueden dibujar a mano muy rápidamente.

Una vez que tenga esa clase UIView de dibujo rápido, la configurará como contentView de UITableViewCell. Hecho correctamente, acelerará enormemente su desplazamiento.

Asi que…
Loopt utiliza ambas estrategias en nuestras vistas complejas de tabla. Tenemos algunas celdas muy complejas que incluyen una tonelada de información, y en su mayor parte se desplazan como mantequilla. La reutilización de celdas es una ganancia razonable para una baja inversión de esfuerzo, pero la verdadera recompensa proviene de poner la grasa en el codo y dibujar a mano las vistas de contenido. Te prometo que una vez que lo hagas funcionar una o dos veces no parecerá demasiado oneroso en el futuro, y te gustarán los resultados.