Orientation des vues portrait paysage soucis
Bonjour à tous,
Je m'arrche les cheveux depuis un certain temps avec l'orientation des vues format paysage et portrait... Comment faire une modaleview au format paysage si on a une application au format portrait ?
Je réalise un jeu qui se passe en deux temps. Quand on ouvre le programme un a vue vue qui apparait de manière standard au format paysage avec une tab bar en bas. L'application permet de gérer son compte et différent paramètres. Quand le joueur démarre une partie le jeux se présente au format paysage avec une vue modale qui couvre tout l'écran.
dans gameViewController
Si je compile en 2.x le tout est chargée au format portrait avec une vue au format paysage, du coup il manque la moitié du game bord qui dépasse le cardre de l'écran. Par contre si j'incline l'iPhone pour le mettre à l'horizontal la vue s'adapte définitivement au cadre et le gameboard rempli tout l'écran correctement. (Notez que si l'iPhone est déja incliné a l'horizontal au moment du chargement, il faut le remettre a la verticale puis le ré incliner pour que la vue s'ajuste)
Si je compile en 3.0
Ma vue est correctement adaptée quand je lance la partie (pas besoin d'incliner l'iPhone) par contre si je quite la partie et que je relance une nouvelle, la deuxième partie se charge dans les mauvaises proportions comme en 2.x mais seulement j'ai beau incliner l'iPhone plus moyen de réajuster la vue...
Ais-je fais faux quelque part ?
Je m'arrche les cheveux depuis un certain temps avec l'orientation des vues format paysage et portrait... Comment faire une modaleview au format paysage si on a une application au format portrait ?
Je réalise un jeu qui se passe en deux temps. Quand on ouvre le programme un a vue vue qui apparait de manière standard au format paysage avec une tab bar en bas. L'application permet de gérer son compte et différent paramètres. Quand le joueur démarre une partie le jeux se présente au format paysage avec une vue modale qui couvre tout l'écran.
- (IBAction)startGame:(id)sender {<br /> <br /> mGameViewController = [[GameViewController alloc] initWithNibName:@"playbox" bundle:nil];<br /> <br />[tabBarController.view removeFromSuperview];<br /> <br />[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];<br /> <br /> [window addSubview:mGameViewController.view];
dans gameViewController
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {<br /> // Return YES for supported orientations<br /> return (interfaceOrientation == UIInterfaceOrientationLandscapeRight);<br />}
Si je compile en 2.x le tout est chargée au format portrait avec une vue au format paysage, du coup il manque la moitié du game bord qui dépasse le cardre de l'écran. Par contre si j'incline l'iPhone pour le mettre à l'horizontal la vue s'adapte définitivement au cadre et le gameboard rempli tout l'écran correctement. (Notez que si l'iPhone est déja incliné a l'horizontal au moment du chargement, il faut le remettre a la verticale puis le ré incliner pour que la vue s'ajuste)
Si je compile en 3.0
Ma vue est correctement adaptée quand je lance la partie (pas besoin d'incliner l'iPhone) par contre si je quite la partie et que je relance une nouvelle, la deuxième partie se charge dans les mauvaises proportions comme en 2.x mais seulement j'ai beau incliner l'iPhone plus moyen de réajuster la vue...
Ais-je fais faux quelque part ?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Où ça ? Ah bah heu ça j'en sais rien moi :P
Comment ouvrir une modaleview (ou autre) au format paysage lorsqu'on a une application au format portrait ?
J'ai constaté un fait bizzare si je ne retire pas mais que je le laisse
[tabBarController.view removeFromSuperview];
Alors ma vue reste en mode portrait dans les mauvaise proportion. Dans la partie du bas je vois ma tabBarController.view. Si je met l'appareil en mode paysage ma GameView ne s'adapte plus.
Autrement dit le fait de laisser la tabBar empêche la nouvelle vue de s'ajuster