¿Qué hace que el desplazamiento sea tan discontinuo en UITableView cuando se cargan las imágenes? ¿Es porque deben agregarse como subvistas? ¿O es porque las imágenes deben almacenarse en caché? ¿Ambos?UITableView rendimiento de desplazamiento suave
Respuesta
Porque se agregan como subvistas, y es mucho trabajo dibujar las subvistas, ya que tienen que ser compuestas. Aún más cuando Core Graphics o Core Animation dibujan múltiples celdas con estas subvistas.
Loren Brichter (atebits) lo explica mejor:
Al igual que en Mac OS X, hay dos sistemas de dibujo en el iPhone. Uno es CoreGraphics, el otro es LayerKit CoreAnimation. CoreGraphics hace uso de la CPU, CoreAnimation hace uso de lo que cree que es más rápido, muy probablemente la GPU.
La GPU en el iPhone odia la fusión, es por eso que Apple recomienda que mantenga la mayor opacidad posible en sus vistas. A veces no tienes otra opción: si tienes una etiqueta sobre una imagen, estás obligado a hacer que la etiqueta sea transparente, de lo contrario, obtienes un gran bloque desagradable alrededor del texto.
¿Qué debe hacer un desarrollador? Mezcla previa por supuesto ... con CoreGraphics en tu propia vista. Si combinas tus cosas en una sola vista estática bajo demanda (por ejemplo, cuando una vista de tabla mueve una celda en pantalla), es un poco más caro para el primer fotograma, pero cada fotograma después de eso, CoreAnimation solo trata con una imagen grande y opaca textura ... que ama Es más que solo la mezcla también. Si piensas en lo que está sucediendo en términos de sobregiro, tener una gran vista por celda de tabla es una gran victoria porque CoreAnimation solo tocará un solo píxel en la pantalla una vez en lugar de varias veces (potencialmente, dependiendo de la cantidad de superposición de tu antiguo ver jerarquía tenía).
Honestamente, no estoy seguro de qué responder.
Lo que sé, es que cuando tengo una muy "pesado" UITableView, y lo necesito para desplazarse rápido, utilizar el método del creador de Tweetie:
http://blog.atebits.com/2008/12/fast-scrolling-in-tweetie-with-uitableview/
nunca encontró una mejor mucho más que este.
por favor no agregue enlaces a sus aplicaciones o una firma a sus respuestas – iwasrobbed
Gracias por tomarse el tiempo para hacer esa solicitud. Me complace eliminar mi firma. Saludos cordiales. – camilo
- 1. UITableView rendimiento de desplazamiento con CALayer + máscara
- 2. Trucos para mejorar el rendimiento de desplazamiento de iPhone UITableView?
- 3. Emacs, desplazamiento suave, desplazamiento-margen y eshell
- 4. ListBox, VirtualizingStackPanel y desplazamiento suave en WPF
- 5. desplazamiento suave para WPF DataGrid
- 6. Android OpenGL ES, desplazamiento suave
- 7. desplazamiento automático suave utilizando javascript
- 8. Jquery, Jcarousel desplazamiento suave infinito
- 9. UITableView desplazamiento caso
- 10. Desplazamiento eterno UITableView
- 11. UITableView no tiene desplazamiento
- 12. Barra de desplazamiento personalizada UITableView
- 13. Detectando el desplazamiento de UITableView
- 14. desplazamiento suave/scroll inercial/impulso scroll
- 15. NSTextView, anexando texto y desplazamiento suave
- 16. UITableView con desplazamiento infite y carga diferida
- 17. Desplazamiento de una UITableView dentro de UIScrollView
- 18. Eliminar sombra de esquina/desplazamiento en UITableView
- 19. Cómo detectar el desplazamiento de UITableView?
- 20. El desplazamiento suave no funciona en ViewPager (biblioteca de soporte)
- 21. UITableView cornerRadius con problemas de rendimiento de borde en iOS
- 22. Desplazamiento rápido en Tweetie con UITableView
- 23. UITableView se bloquea en el desplazamiento
- 24. Desplazamiento vertical suave de la página con la rueda del mouse y la barra de desplazamiento
- 25. se corrige para obtener un desplazamiento suave en emacs?
- 26. Reducir la velocidad del desplazamiento suave en la vista de desplazamiento
- 27. ¿Desplazamiento de la imagen de fondo para UITableView?
- 28. Cómo mostrar la barra de desplazamiento en UITableView
- 29. Deshabilitar el desplazamiento de UISearchbar que se agrega a UITableView
- 30. deshabilitar el desplazamiento en una UITableView (iPhone SDK 3.0)
Ese enlace parece estar abajo :(Aunque podría estar equivocado, como estoy en una red privada – GoodSp33d
@ GoodSp33d: Tiene razón, atebits.com ha estado inactivo durante varios años. Lo bueno es que está archivado; He editado mi respuesta ahora. – BoltClock