rotacion - rotar pantalla iphone 6
Cocos2d-ConfiguraciĆ³n de dispositivo/orientaciĆ³n de pantalla (6)
En RootViewController.m, busque la línea
return ( UIInterfaceOrientationIsPortrait(interfaceOrientation ));
cambiarlo a
return ( UIInterfaceOrientationIsLandscape(interfaceOrientation ));
Soy nuevo en la API de cocos2d y he notado que hay algunas formas de establecer la orientación de las pantallas dentro de las plantillas. No he podido averiguar la forma correcta de establecer mi orientación en LandscapeRight y mantenerlo así durante todo el juego. ¿Cómo cambio mi orientación para que mantenga LandscapeRight? Cualquier ayuda es apreciada. ¡Gracias!
Modifique GameConfig.h desde la plantilla de cocos2d.
#define GAME_AUTOROTATION kGameAutorotationNone
/* original code is kGameAutorotationUIViewController. */
Y modifique AppDelegate.m también.
#if GAME_AUTOROTATION == kGameAutorotationUIViewController
[director setDeviceOrientation:kCCDeviceOrientationPortrait];
#else
[director setDeviceOrientation:kCCDeviceOrientationLandscapeRight];
/* original code is "Left". */
#endif
Usa esta linea:
[[CCDirector sharedDirector] setDeviceOrientation:kkCCDeviceOrientationLandscapeRight];
La respuesta aquí ha cambiado con cocos2d 2.0, ya que CCDirector ahora es un ViewController en iOS:
CCDirector ya no es compatible con la orientación del dispositivo. RootViewController maneja toda la autorrotación y la orientación del dispositivo ahora. Afortunadamente, se puede usar [[UIDevice currentDevice] orientation] en lugar de [[CCDirector sharedDirector] deviceOrientation]. Las enumeraciones son las mismas, excepto que comienzan con UI en lugar de CC.
Forzar una orientación específica es una cuestión simple de devolver SÍ solo a la orientación deseada en el método RootViewController shouldAutorotateToInterfaceOrientation.
Elegir entre Cocos2D v1.x y 2.x y Sugerencias para actualizar a Cocos2D 2.0 en learn-cocos2d.com
La respuesta correcta, me llevó un poco encontrarla, está en info.plist, cambie los valores de orientación de la interfaz admitida, el elemento 0 y el elemento 1 tienen 4 valores posibles, Portrait (botón de inicio superior), etc.
si agregó shouldAutorotateToInterfaceOrientation y no resuelve su problema
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return UIInterfaceOrientationIsLandscape(interfaceOrientation);
}
ENTONCES Intenta agregar esta línea a la aplicaciónDelegate.m
[window_ setRootViewController:navController_];
Buena suerte