Pregunta

La aplicación para iPhone que estoy desarrollando en modo paisajista está muy bien. Lo puse en retrato para comparar y parece ser mucho más suave en esa orientación. No estoy haciendo lo que creo que es intensivo en el proceso: una vista de mapa, algunos botones, algunas etiquetas y algunos dibujos de cuarzo, sin embargo, alguna animación básica de cuarzo ralentiza seriamente mal.

¿Alguien sabe si el modo de paisaje está terriblemente discapacitado en comparación con el retrato y/o de ser así, si hay mejores formas de crear una aplicación de paisaje? Simplemente uso una vista de raíz girada transformada 90 grados y le adjunte todas mis vistas.

Gracias.

¿Fue útil?

Solución

No debe haber una diferencia real entre el paisaje y las orientaciones de retratos cuando se trata de representar el rendimiento. ¿Está utilizando una transformación para rotar su vista principal de 90 grados? A partir de iPhone OS 2.1, creo, ya no necesita aplicar manualmente una transformación a su vista principal para que comience en el paisaje. Todo lo que tenía que hacer para forzar la orientación del paisaje era colocar este método de delegado dentro de mi delegado de aplicación:

- (void)application:(UIApplication *)application willChangeStatusBarOrientation:(UIInterfaceOrientation)newStatusBarOrientation duration:(NSTimeInterval)duration;
{
    // This prevents the view from autorotating to portrait in the simulator
    if ((newStatusBarOrientation == UIInterfaceOrientationPortrait) || (newStatusBarOrientation == UIInterfaceOrientationPortraitUpsideDown))
        [application setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
}

y lo siguiente en mi controlador de vista raíz:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{
    return ( (interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (interfaceOrientation == UIInterfaceOrientationLandscapeRight));
}

Otros consejos

Tal vez hagas algunas divisiones que resultan en posiciones de píxeles no enteros (como 0.76). Tuve algunos problemas con el rendimiento cuando tenía posiciones de píxeles no enteros. (Aunque no estoy completamente seguro de que estén conectados. Pero tal vez te ayude)

Gracias por todas sus sugerencias y ayuda, a todos. Probé la sugerencia de Brad de configurar la configuración de Autorotate del controlador de vista y funcionó extremadamente bien. Creo que fue un gran factor que contribuyó a la desaceleración.

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