title: Subclassing UINavigationController for custom navigation between Views
body: <p>I am making a small app with the following view hierarchy with UINavigationController:</p>
  
  <blockquote>
    <p>Login -> Options -> three different views</p>
  </blockquote>
  
  <p>The problem is that I would like to navigate between the last 3 views in the following manner:</p>
  
  <pre><code>1&lt;-&gt;2
  1&lt;-&gt;3
  2&lt;-&gt;3
  </code></pre>
  
  <p>i.e. to be able to switch to any view from any other view, which reminds UITabViewController functionality. So, it is not hierarchical, it is any-to-any graph. To switch between views I will use buttons in the navigation bar.</p>
  
  <p>The easiest way for me is to subclass UINavigationController, add properties that correspond to my views and implement methods for switching between these views (using pushViewController and popToRootViewController). These methods will be called from the views for switching (navigating).</p>
  
  <p>However the reference says that UINavigationController is not intended for subclassing. 
  <a href="http://developer.apple.com/library/ios/#documentation/uikit/reference/UINavigationController_Class/Reference/Reference.html" rel="nofollow">http://developer.apple.com/library/ios/#documentation/uikit/reference/UINavigationController_Class/Reference/Reference.html</a></p>
  
  <p>What do you recommend me to do?</p>