2016-07-02 6 views

답변

0

PLZ는 밖으로 도움을 당신이 될 것입니다이 코드를 사용

-(id)getTopViewController{ 


      UIViewController *topController = [UIApplication sharedApplication].keyWindow.rootViewController; 

      while (topController.presentedViewController) { 
       topController = topController.presentedViewController; 
      } 
      if (![topController isKindOfClass:[NSNull class]]) { 

       return topController; 
      } 



    } 


- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{ 



     UIViewController *viewOb = [self getTopViewController]; 


    if ([viewOb isKindOfClass:[MasterViewController class]]) { 
     return UIInterfaceOrientationMaskPortrait; 


    } 



    return UIInterfaceOrientationMaskAll; 
} 
+0

덕분에이 코드를 사용하지만 난 필요 세로 모드의 Ipad가 세로 모드에서 앱 실행을 강제하지 않을 때 MasterViewController를 표시합니다. – NTNT

0

viewWillAppear

NSNumber *value = [NSNumber numberWithInt: UIInterfaceOrientationMaskPortrait]; 
[[UIDevice currentDevice] setValue:value forKey:@"orientation"]; 
0

Plese에 넣고 애플 대리자 클래스에

- (BOOL)shouldAutorotate{ 
    //disable rotation 
    return YES; 
} 
- (UIInterfaceOrientationMask)supportedInterfaceOrientations 
{ 
    //allow only portrait interface orientation 
    return UIInterfaceOrientationMaskPortrait; 
} 
+0

감사하지만 도움이되지 않습니다. iPad에서 실행할 때 MasterViewController를 세로 모드로 표시하고 싶습니다 (MasterViewController 및 DetailViewController). 이거 좀 생각해? – NTNT