2010-02-17 9 views
4

Comment faire pivoter l'écran en mode paysage?Comment faire pivoter l'écran en mode paysage?

Pouvez-vous suggérer un code simple?

+0

C'est un double de http://stackoverflow.com/questions/402/iphone-app-in-landscape-mode ou http://stackoverflow.com/questions/1437636/how-to-autorotate -from-portrait-to-landscape-mode –

Répondre

2

dans le UIViewController, vous devriez avoir la méthode

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

pour faire tourner automatiquement.

Si votre application a un UITabBarController alors vous devez sous-classe la UITabBarController et ajouter la méthode à elle also.Something comme ceci:

@interface MyTabBarController : UITabBarController { 

} 

@end 

#import "MyTabBarController.h" 

@implementation MyTabBarController 

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

@end 
+0

- shouldAutorotateToInterfaceOrientation: obsolète dans iOS 6.0. Voir [this] (http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/instm/UIViewController/shouldAutorotateToInterfaceOrientation :). – JohnK

0

Merci Sorina. Avoir besoin de UITabBarControllershouldAutorotateToInterfaceOrientation: m'a donné toutes sortes de frustrations car ce n'est pas une classe que je sous-classifiais pour une raison quelconque (c.-à-d., La fonctionnalité par défaut était bien pour mon application). En tant que solution plus légère que la sous-classe j'ai utilisé une catégorie (peut-être tout de même, mais il semble plus léger).

@interface UITabBarController (WithRotation) 
@end 

@implementation UITabBarController (WithRotation) 
- (BOOL) shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation) interfaceOrientation { 
    return YES; 
} 
@end 

p.s. Si vous souhaitez uniquement prendre en charge certaines orientations, testez l'interfaceOrientation et ne renvoyez YES que dans les orientations appropriées.

p.p.s. Qu'est-ce que info.plist Supported interface orientations? La seule chose qui semble importer est ce qui est retourné de shouldAutorotateToInterfaceOrientation:

+0

- shouldAutorotateToInterfaceOrientation: obsolète dans iOS 6.0. Voir [ici] (http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/instm/UIViewController/shouldAutorotateToInterfaceOrientation :). – JohnK

0

Il suffit d'implémenter ceci dans votre fichier de contrôleur de vue, et vous avez terminé.

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

- shouldAutorotateToInterfaceOrientation: obsolète dans iOS 6.0. Voir [this] (http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/instm/UIViewController/shouldAutorotateToInterfaceOrientation :). – JohnK

Questions connexes