title: Programming iOS: clarifications about Root View Controller
body: <p>Through this question I would like to know if I understand well the notion of Root View Controller.</p>
  
  <p>In iOS application, the Root View Controller (RVC) is the controller whose view gets added to the UIWindow application at startup, isn't true?</p>
  
  <pre><code>[window addSubview:rvcController.View];
  [window makeKeyAndVisible];
  </code></pre>
  
  <p>Now, an UIWindow has also a rootViewController property. When running the previous snippet of code, does that property gets populated with the rvcController or do I have to set it explicitly?</p>
  
  <p>Then, in a UINavigationController it is possible to set a RVC that is different from the previous RVC set for the entry point.</p>
  
  <p>In this case, the first time I add a controller to the navigationController stack (pushing a new controller on it), does the framework set that controller as the RVC for the navigationController or do I have to set it explicitly through <code>initWithRootViewController</code> method?</p>