Problem z obsługą iOS 6
W moim kontrolerze widoku implementuję dwie metody sterowania orientacją interfejsu:
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
- (BOOL)shouldAutorotate
{
return YES;
}
wsupportedInterfaceOrientations
metoda, wracamUIInterfaceOrientationMaskPortrait
ale w tym czasie zdałem sobie sprawę, żeshouldAutorotate
metoda nie jest wywoływana.
Ale zmieniam się nareturn UIInterfaceOrientationPortrait
wsupportedInterfaceOrientations
metoda. TheshouldAutorotate
wywoływana jest metoda, ale występuje błąd, który wspomina w następujących przypadkach:
UIApplicationInvalidInterfaceOrientation
, powód: „Obsługiwane orientacje nie mają wspólnej orientacji z aplikacją i powinny automatycznie zwracać TAK”
Przy okazji wybieram wszystkie orientacje w obsługiwanych orientacjach interfejsu.
EDYCJA
Używam viewController i osadzam go w navigationController. tutaj jest AppDelegate.h
@interface AppDelegate : UIResponder <UIApplicationDelegate,UINavigationControllerDelegate>
@property (strong, nonatomic) UIWindow *window;
@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;
@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;
@property (readonly, strong, nonatomic) UINavigationController *navController;
- (void)saveContext;
- (NSURL *)applicationDocumentsDirectory;
@end
w metodzie didFinishLaunchingWithOptions w AppDelegate.m
navController = (UINavigationController *)self.window.rootViewController;
IPad_HomeViewController *rootVC=(IPad_HomeViewController *)navController.topViewController;
rootVC.managedObjectContext = self.managedObjectContext;
return YES;
w moim IPad_HomeViewController,
@interface IPad_HomeViewController : UIViewController <UINavigationControllerDelegate>
@property (strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@end