J'ai un projet iPad structuré comme: - AppDelegate - mainWindow - Voir contrôleur - VoirFournir un soutien autorotation à un sous-vue chargé par programme - iPad
Les Contrôleurs Afficher le fichier .m charge une autre vue par programme et le positionne sur l'écran. Cette vue va être glissée dedans et dehors.
Je fais ceci:
- (void)viewDidLoad
{
[super viewDidLoad];
CGRect viewRect = CGRectMake(0, 0, 0, 0);
CalculatorView *v = [[[CalculatorView alloc]
initWithFrame:viewRect] autorelease];
[self.view.window addSubview:v];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
v.view.frame = CGRectMake(0, 0, 460, 320);
[UIView commitAnimations];
}
La question que j'ai est que la sous-vue j'ajouter ici ne marche pas » semblent avoir la bonne orientation. Le projet prend en charge SEULEMENT paysage, et lance au paysage. La vue du conteneur est très bien, et il contient quelques boutons qui sont bien aussi. Toutefois, cette vue chargée par programme est bloquée en mode Portrait. J'ai fourni le code de rotation automatique suivant (Dans le .m de vue chargée):
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}
Mais il ne sera jamais appelé. Alors, comment puis-je obtenir la sous-vue ajoutée par programme pour charger en mode paysage et PAS en mode portrait? TIA!
de vous vue autoresizingMask Felipe - Au sujet de l'essayer maintenant, je rapporterai mes résultats. –
Felipe - Ma question est maintenant de savoir à quoi devrait ressembler le "MyInterfaceChangedCustomMethod". –
Qu'en est-il de résoudre cela en en faisant un UIViewController à la place, avec un UIView en tant que variable d'instance? –