在我的视图控制器中,我实现了两种控制界面方向的方法:
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
- (BOOL)shouldAutorotate
{
return YES;
}
在supportedInterfaceOrientations
方法中,我返回UIInterfaceOrientationMaskPortrait
但当时我意识到该shouldAutorotate
方法没有被调用。
但我改成return UIInterfaceOrientationPortrait
中的supportedInterfaceOrientations
方法。正在调用该shouldAutorotate
方法,但出现以下错误:
UIApplicationInvalidInterfaceOrientation
,原因:'支持的方向与应用程序没有共同的方向,并且 shouldAutorotate 返回 YES'
顺便说一句,我选择了支持的界面方向中的所有方向。
已编辑
我使用 viewController 并嵌入了 navigationController。这是 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
在 AppDelegate.m 下的 didFinishLaunchingWithOptions 方法中
navController = (UINavigationController *)self.window.rootViewController;
IPad_HomeViewController *rootVC=(IPad_HomeViewController *)navController.topViewController;
rootVC.managedObjectContext = self.managedObjectContext;
return YES;
在我的 iPad_HomeViewController 中,
@interface IPad_HomeViewController : UIViewController <UINavigationControllerDelegate>
@property (strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@end