¿Cuáles son algunas formas de optimizar la vista de tabla al desarrollar para iOS?

Tenga en cuenta estas heurísticas:

  1. Reutilice siempre las celdas
  2. No utilices layoutSubviews para tareas pesadas
  3. No use manipulaciones CALayer (como esquinas redondeadas)
  4. Como dijo Glyn, piense en alimentar la vista de tabla con la cantidad correcta de datos. Considere verificar la velocidad de desplazamiento para anticipar cuándo se necesitan nuevos datos.
  5. No cree una vista personalizada por código, pero use Interface Builder para andamiar las celdas
  6. Tenga en cuenta el back-end de la celda y cómo lo usa. No tiene sentido recuperar un objeto completo de Core Data cuando solo usa un título.
  7. Tenga en cuenta las tareas pesadas, como cambiar el tamaño de las imágenes, justificar el texto, usar celdas de altura variable, capas superpuestas, etc.
  8. Tenga en cuenta la delegación de eventos. Cuando alguien se desplaza y toca las celdas, ¿responden los botones, etc. a los eventos táctiles? Todo el burbujeo / delegación toma el poder de procesamiento.
  9. Incluso si realiza tareas pesadas, asegúrese de que no esté en el hilo de la interfaz de usuario.
  10. Es peor esperar y no saber cuánto tiempo o por qué, que esperar, asegúrese de usar un indicador de carga.
  11. Considere otro mecanismo de desplazamiento, como un mango en el lado derecho de la pantalla que tiene una resolución de desplazamiento / salto más alta que solo el desplazamiento de arriba a abajo, como el desplazamiento en un video.

En general: cuanto menos trabajo se necesita para construir y reutilizar una celda, más rápido es el desplazamiento.

¡Buena suerte!

Reinder, LearnAppMaking.com

Las vistas de tabla bien escritas reciclarán las celdas (en lugar de asignar memoria única a las celdas fuera de la pantalla).

Esto mantiene el uso de la memoria bajo control, pero significa que las células se reconstruyen continuamente a medida que aparecen, y se vuelven a dibujar si cambian.
A mayor complejidad en cada celda, más lento se vuelve.

Un cliente de Twitter muy famoso tomó todo el contenido de la celda, las imágenes, el texto, etc., y lo convirtió en una imagen 2D.

La vista de tabla simplemente contenía celdas que contenían una vista de imagen plana que mostraba la imagen en caché. Esto es inteligente, pero no estoy seguro de que valga la pena hacer esta optimización.

Si las celdas contienen datos traídos de Internet, cualquier retraso en la carga también provocará un bloqueo. Cualquier pérdida arruinará el rendimiento del desplazamiento.

La extracción debe realizarse de forma asíncrona, en un hilo de carga. Anticípese y cargue con anticipación, colocando los datos en un caché. Si te desplazas hacia algo que no está cargado, haz que la aplicación muestre un marcador de posición.

referencia este proyecto LazyTableImages

More Interesting

¿Cómo elimino selectivamente la música de un iPhone sin sincronizarlo con iTunes?

Accidentalmente eliminé un video de mi iPod 5. No hice una copia de seguridad en iTunes o iCloud Box. ¿Hay alguna forma de recuperarlo?

¿Puedo degradar iOS en iPhone 4s de 9.2 a 7 o 6?

Si hago una aplicación con Xamarin, ¿debo hacer la misma GUI y compartirla para Android e iOS o hacer 2?

¿Qué hay de nuevo en iOS 7.1?

Cómo cambiar el sonido de notificación en la aplicación Gmail de iOS

¿Cuál es su opinión honesta sobre el uso de Xamarin en la creación de aplicaciones de Android e iOS? ¿Crees que vale la pena la tarifa de la Universidad Xamarin?

¿Por qué Apple se alejó del diseño skeuomorphic?

¿Cuál es el lenguaje más eficiente para el desarrollo de aplicaciones multiplataforma (iOS, Android, etc.)?

Necesito ayuda con la aplicación iOS Drawing que muchos usuarios se conectan al mismo servidor y dibujan en el mismo fondo. Tengo un problema de memoria con el gran fondo. ¿Qué tengo que hacer?

¿Esperas un jailbreak en iOS 11?

¿Puedo degradar mi iPhone 5S de iOS 9 con jailbreak?

¿Cuál es la mejor aplicación de notas que has usado en iOS, excepto Evernote?

¿Quiénes son los mejores desarrolladores de iOS y Android en Salt Lake Valley?

Todas mis notas del iPad desaparecieron después de que la aplicación se bloqueó dos veces. También tenía muy poco espacio de almacenamiento en ese momento si eso marca la diferencia. ¿Cómo puedo recuperar mis notas? No uso iCloud o iTunes para hacer una copia de seguridad de mi iPad.