Let's say you have a tab view controller on the navigation controller view stack. (For the sake of argument.) Your tab controller has an array of view controllers for each of its tab views. Your tab controller's navigationController is clearly set to the nav controller (since its view is on the stack.)
But would you set the navigationController for each of your tab views to point to the nav controller? Their views aren't actually on the nav stack (they are subviews to the tab view that is), but it's necessary for them to be able to push a view onto said stack. Is it a bad idea? Should I do this but use a different instance variable?
Or would you just maintain pointers from all the subviews to their parent view controllers all the way up to the navigation controller? That seems clumsy and not that great if you have to go more than one level deep (which I do.)
(I'm not precisely doing this, I have a complex view with dedicated controllers for its subviews, so this is an accessible analogy.)