La compréhension de l'iOS 6 Interface de changement d'orientation

AJOUTÉ:
Je vois que ma question est considérée souvent sans upvotes j'ai donc décidé que les gars, vous n'obtenez pas ce que vous recherchez. Vous allez être redirigé à la question qui a vraiment belle réponse à ce sujet
Comment gérer les changements d'orientation dans iOS6

Exigences spécifiques pour les changements d'orientation:
Limité la rotation

Upvotes sont les bienvenus 🙂


J'ai créé un nouveau projet de Master modèle de Détails et d'essayer de démarrer avec une orientation paysage.
Comme vous le savez le

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

méthode est obsolète et nous devons l'utiliser

- (NSUInteger)supportedInterfaceOrientations

et/ou

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation

Voici mon code:

- (NSUInteger)supportedInterfaceOrientations {
    NSLog(@"supported called");
    return UIInterfaceOrientationMaskAll;//Which is actually a default value
}

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
    NSLog(@" preferred called");//This method is never called. WHY?
    return UIInterfaceOrientationLandscapeRight;
}

Comme vous pouvez le voir je suis en train de retourner l'orientation paysage dans la méthode préférée mais elle n'est jamais appelée.
p.s. documentation:

Discussion Le système appelle cette méthode lors de la présentation de la vue
contrôleur de plein écran. Vous implémentez cette méthode lors de votre point de vue
contrôleur prend en charge deux ou plus de deux orientations, mais le contenu s'affiche
meilleur dans l'une de ces orientations.

Si votre vue-contrôleur met en œuvre cette méthode, puis lors de sa présentation,
de son point de vue est illustré dans l'orientation préférée (bien qu'il puisse plus tard
être mis en rotation à un autre pris en charge la rotation). Si vous n'implémentez pas
cette méthode, le système présente le point de vue du contrôleur à l'aide de l'actuel
l'orientation de la barre d'état.

Donc, la question est: Pourquoi le prefferredOrientation méthode n'est jamais appelé? Et comment devons-nous traiter les différentes orientations dans les différents contrôleurs?. Merci!
P. S ne marque pas la question des doublons. J'ai étudié toutes les questions similaires et ils n'ont pas de réponse pour le mien.

  • Vous pouvez suivre Apple tutoriel pour le même prise en charge de Plusieurs Interface Orientations Espérons que cela va vous aider.
  • À partir de votre lien: "Quand une-vue-contrôleur est présenté sur la racine-vue-contrôleur, le système de changements de comportement de deux façons. Tout d'abord, la vue-contrôleur est utilisé à la place de la vue racine contrôleur au moment de déterminer si une orientation est prise en charge. Deuxièmement, la vue contrôleur peut également fournir une orientation privilégiée. Si le point de vue du contrôleur est présenté en plein écran, l'interface utilisateur est présenté dans l'orientation préférée." C'est ce que je fais....ou je ne comprends pas..veuillez expliquer plus en détails..
InformationsquelleAutor Stas | 2012-10-08