2010-05-14 4 views
5

Si mon iPad est en mode paysage et que l'on appelle présentModalViewController, la vue se transforme automatiquement en mode portrait. Des solutions?problème avec presentModalViewController

UIViewController * start = [[UIViewController alloc]initWithNibName:@"SecondView" bundle:nil]; 
start.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
start.modalPresentationStyle = UIModalPresentationFormSheet; 
[self presentModalViewController:start animated:YES]; 

En SecondView je l'ai déjà ajouté:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
return YES; 
} 
+0

Cela m'est arrivé aussi - je ne l'ai pas encore compris, donc j'espère que quelqu'un répond :) – Conceptdev

+0

La solution est très simple: Allez dans Interface Builder et connectez votre ViewController correctement avec votre classe. Cela a fonctionné pour moi –

Répondre

2

Le problème est que votre exemple de code crée UIViewController au lieu de votre classe dérivée réelle. En d'autres mots à la place, vous devriez être en train de créer votre contrôleur comme ceci:

SecondViewController *start = [[SecondViewController alloc]initWithNibName:@"SecondView" bundle:nil]; 

Je suppose que votre point de vue classe contrôleur est appelé « SecondViewController » parce que vous chargez une plume par un nom similaire.

Si vous ne fournissez pas la bonne instance, vos méthodes de délégué ne peuvent en aucun cas être appelées.

0

Il doit y avoir quelque chose d'autre se passe parce que la définition de IB ne fonctionne pas pour moi non plus. L'OP d'origine utilise-t-il un splitViewController?

1

votre 'start' UIViewController doit remplacer pour laisser apparaître dans la bonne orientation.

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
    // Return YES for supported orientations. 
    return YES;//UIInterfaceOrientationIsLandscape(interfaceOrientation); 
} 

J'ai eu ce problème tout à l'heure. Et je le résous de cette façon. J'espère que cela peut vous aider aussi.

Questions connexes