title: Presenting from window.rootViewController
body: <p>In my app, I set the window's rootViewController in <code>willFinishLaunching</code>. Standard.</p>
  
  <p>In <code>didFinishLaunching</code>, I check to see if the user is logged in, and if not, I present a LoginViewController.</p>
  
  <pre><code>- (BOOL)application:(UIApplication *)application willFinishLaunching...
  {
      ...
  
      self.window.rootViewController = [MyViewController new];
      [self.window makeKeyAndVisible];
  
      ...
  
      return true;
  }
  
  - (BOOL)application:(UIApplication *)application didFinishLaunching...
  {
      if (/* not logged in */) {
          UIViewController *login = [LoginViewController new];
          UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:welcome];
          [self.window.rootViewController presentViewController:nav animated:false completion:nil];
      }
  
      return true;
  }
  </code></pre>
  
  <p>In iOS 7, this works perfectly. However, in iOS 8, I see the following warnings in my console:</p>
  
  <pre><code>Unbalanced calls to begin/end appearance transitions for &lt;LoginViewController: 0x7fca9340cbb0&gt;.
  </code></pre>
  
  <p>I'm not quite sure what I need to do to avoid this warning while still being able to present my LoginViewController.</p>
  
  <p>I like presenting from <code>window.rootViewController</code> because it allows me to dismiss <code>LoginViewController</code> when the user logs in without having to add completion/callback code to any other view controllers in my application.</p>
  
  <p>Any ideas?</p>