2012-03-30 18 views
13

He estado trabajando en una aplicación para iPad que ha pasado por pruebas exhaustivas en el iPad 2. Recientemente obtuve un "Nuevo iPad" (iPad 3), y la aplicación se siente significativamente más lenta. Las animaciones/comportamientos de colibrí que eran suaves como la seda en el iPad 2 ahora se sienten extremadamente intermitentes en el nuevo iPad.Animación desgarbada y rendimiento de desplazamiento en "Nuevo iPad" (Retina iPad 3)

Hago muchos de los consejos de rendimiento de UI estándar: uso de shadowPaths, dibujando UITableViewCells usando CoreGraphics, rastrillando vistas que no cambian a menudo/no necesitan animar.

¿Hay algún error que deba tener en cuenta en la transición de mi aplicación al iPad 3?

actualización

juré que he intentado esto antes, pero la eliminación de esquinas redondeadas de mis puntos de vista UIViews terminó acelerando la aplicación de manera significativa. clipToBounds también parece ser un golpe de rendimiento significativo (aunque extrañamente ... configurar la máscara de la capa de una vista parece estar bien, lo que no tiene sentido para mí). Alguna combinación de este y otros ajustes parece haber resuelto el problema.

Una vez que haga un segundo pase visual sobre la aplicación, encontraré la manera de volver a aplicar esquinas redondeadas de una manera más eficiente.

+1

Desafortunadamente también estoy teniendo este problema. Mi aplicación funciona bien en iPad1 y 2, pero tiene graves problemas de rendimiento en iPad 3. Estoy usando scrollViews con imágenes pequeñas a medianas y UIWebViews. Sin embargo, me temo que es iPad 3 inminente, porque la pantalla Retina requiere 4 veces la memoria (en y fuera de pantalla), pero el nuevo iPad solo viene con el doble de memoria y una CPU similar a la del iPad 2. Esto debería afectar a todas las aplicaciones que no se beneficie de la GPU. – auco

+3

Apple tiene una guía de dibujo e impresión que tiene recomendaciones para mejorar el rendimiento de las aplicaciones que no son Retina que se ejecutan en una pantalla de retina: https://developer.apple.com/library/ios/#documentation/2DDrawing/Conceptual/DrawingPrintingiOS/SupportingHiResScreens/ SupportingHiResScreens.html –

Respuesta

1

creo que lo más importante a tener en cuenta es copias de los gráficos de la memoria del sistema a la tarjeta de vídeo, ya que son 4 veces más grande que los anteriores gráficos protectores y con aproximadamente la misma energía de la CPU como el iPad 2.

+0

No he actualizado muchos gráficos (ninguno de tamaño considerable) a la resolución de la pantalla retina, por lo que copiar imágenes en la memoria de video no debería ser mucho más caro, ¿no? Supongo que para aclarar la pregunta, ¿qué podría estar causando los problemas de rendimiento con el desplazamiento y las animaciones? –

0

Tal vez se debe a la ampliación de iOS? Después de todo, tiene que calcular una versión de alta resolución de todo antes de mostrar a la pantalla. Como algunas cosas en la pantalla ya son de alta resolución (fuente y elementos de interfaz de usuario predeterminados), tiene que escalar cada otro elemento individualmente.

¿Ha intentado simplemente escalar las imágenes usted mismo y agregarlas como imágenes retina a su proyecto?

Buena suerte.

+0

Consideré esta posibilidad y la probé, pero no parece que el escalado de imágenes cause ningún problema de rendimiento. –

2

4 veces los píxeles, solo 2 veces la tasa de llenado. Las matemáticas lo dicen todo.

Cuestiones relacionadas