Pregunta

Estoy trabajando en una aplicación Snow Leopard y estoy haciendo algunas animaciones de vista (intercambiándolas) y he visto algunos ejemplos más antiguos usando NSViewAnimation. Me pregunto si estas son completamente obsoletas por Core Animation?

Parece bastante simple para mí usar

[[myView animator] setFrame:newSwapFrame];

Pero me pregunto si me falta algo o si NSViewAnimation sigue siendo relevante (aparte de la compatibilidad con versiones anteriores).

¿Fue útil?

Solución

Generalmente, debe pasar a Core Animation para obtener el código 10.5+. NSViewAnimation es bastante primitivo y no hace un uso tan eficiente del hardware. No puedo pensar en ninguna ventaja de permanecer con NSViewAnimation que no sea la compatibilidad 10.4.

Otros consejos

Hay algunos casos en los que Core Animation no es adecuado. Por ejemplo, no puede poner un WebView en una vista con respaldo de capa sin que ocurran cosas extrañas.

Además, los campos de texto en las vistas respaldadas por capas no usan suavizado de subpíxeles, lo que puede ser un factor decisivo.

Si no está utilizando vistas respaldadas por capas, entonces su ejemplo de simplemente usar el soporte de propiedad animable es definitivamente más fácil que usar NSAnimation.

Si necesita obtener una captura de pantalla de la ventana más tarde (por ejemplo, para realizar una animación de transición entre dos estados de la ventana), las vistas animadas principales (vista con CAAnimation ) no se pueden capturar. Pero CAAnimation siempre funciona rápido y NSAnimation puede ralentizarse si la CPU está demasiado ocupada.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top