Używam MMDrawerController w mojej aplikacji z this linku
ustawić ViewController korzeniowy w AppDelegate ten sposób:Korzystanie z MMDrawerConroller jak wyłączyć rotację jest niektórych ViewControllers?
self.leftDrawerController = [[LeftDrawerViewController alloc] init];
self.homeViewController = [[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:self.homeViewController];
// DrawerViewController setup
self.drawerController = [[MMDrawerController alloc]
initWithCenterViewController:self.navigationController
leftDrawerViewController:self.leftDrawerController];
[self.drawerController setOpenDrawerGestureModeMask:MMOpenDrawerGestureModeAll];
[self.drawerController setCloseDrawerGestureModeMask:MMCloseDrawerGestureModeAll];
[self.drawerController setDrawerVisualStateBlock:^(MMDrawerController *drawerController, MMDrawerSide drawerSide, CGFloat percentVisible) {
MMDrawerControllerDrawerVisualStateBlock block; block = [[DrawerVisualStateManager sharedManager] drawerVisualStateBlockForDrawerSide:drawerSide];
if (block) {
block(drawerController, drawerSide, percentVisible);
}
}];
[self.window setRootViewController:self.drawerController];
Chcę wyłączyć obrót w określonym ViewController wzywam tych metod i są one nigdy nie zadzwonił i widok nadal obracać:
// ViewController.m
-(BOOL)shouldAutorotate {
return NO;
}
- (NSUInteger)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
Myślę, że problem jest pochodząca z rootViewController który jest MMDrawerViewController!
Sprawdziłem już: this i this i this, ale nic nie pomogło.
Połączenie twoich dwóch odpowiedzi zadziałało. wielkie dzięki, przyjmuję twoją odpowiedź – sazz