Hi James, I'd suggest that you're probably pushing the idea of decoupling things a bit too far here.
View Controllers are inherantly tied to the behaviour of your application, and your user's experience of the flow through it. In 95% of cases, it's absolutely correct for the view controller to know "the user pushed this button, therefore I should show them this other view controller". For the 5% of remaining cases where (for example) you have a highly reusable view controller that gets used in many different places in the app, and may push a different child VC depending on its usage location, I'd suggest simply using a delegate to that particular VC to allow you to separate out what gets pushed. Thanks Tom Davie On 21 May 2013, at 20:56, [email protected] wrote: > I'd like to get some opinions on handling navigation without having > your view controllers modify the navigation stack directly. > I'm currently working on an app where I've subclassed > UINavigationController, which in turn has custom methods for showing > the various views of the app. Each of my app's view controllers has no > sense of the other pieces of the app, and do not push directly on the > navigation controller. I'm thinking this a much better method since it > decouples view controllers from each other and allows the flow of the > app to be updated more easily. > I'm using a lot of NSNotifications to signal commands to the > navigation controller, and it's getting a bit messy. I love the idea > of a centralized, decoupled navigation controller, but I haven't seen > any good examples of this yet. > I would love to get some feedback as to if this is a good idea in the > first place, or techniques you've implemented to handle this sort of > thing. > > Cheers, > > James > _______________________________________________ > > Cocoa-dev mailing list ([email protected]) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/tom.davie%40gmail.com > > This email sent to [email protected] _______________________________________________ Cocoa-dev mailing list ([email protected]) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
