title: Why can't I force landscape orientation when use UINavigationController?
body: <p>I find many question to force UIViewController to landscape as default:
  <a href="https://stackoverflow.com/questions/12520030/how-to-force-a-uiviewcontroller-to-portait-orientation-in-ios-6">How to force a UIViewController to Portrait orientation in iOS 6</a>
  And try this:</p>
  
  <pre><code>- (BOOL)shouldAutorotate
  {
      return YES;
  }
  
  -(NSUInteger)supportedInterfaceOrientations
  
  {
      return UIInterfaceOrientationMaskLandscape;
  }
  
  - (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
  {
      return UIInterfaceOrientationLandscapeLeft;
  }
  </code></pre>
  
  <p>But when I use UIViewController inside UINavigationController, I can't force to landscape.Please help!</p>
  
  <p>*Work NOT ok</p>
  
  <pre><code>- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
  {
      self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
      self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
  
      UINavigationController *navControl = [[UINavigationController alloc] initWithRootViewController:self.viewController];
      [navControl setNavigationBarHidden:YES];
      self.window.rootViewController = navControl;
  
      [self.window makeKeyAndVisible];
      return YES;
  }
  </code></pre>
  
  <p>*Work OK:</p>
  
  <pre><code>self.window.rootViewController = self.viewController;
  </code></pre>