luisrecuenco / LRScrollingSidebarController

A scrolling based sidebar controller
MIT License
171 stars 15 forks source link

Is there a way to set nil left/right panel? #3

Open malcommac opened 10 years ago

malcommac commented 10 years ago

Thank you for your class. Is there a way to set a nil controller for left or right panel? I've tried to set nil but seems it's not supported.

luisrecuenco commented 10 years ago

I recently add a changeset to set the right panel to nil. Isn't it working for you?

https://github.com/luisrecuenco/LRScrollingSidebarController/commit/729b5ffd3ad7ea8c7f74fb8eb589cf711bb181b0

malcommac commented 10 years ago

Yeah it works fine for right panel but I'm pretty confused about the hierarchy. I've three navigation levels: the list/grid -> an item detail -> another view with some details about the current item. If I set the main view controller to the list I can't navigate further to the third level. If I set the left panel with the main view controller I can't set the mainViewController property to nil. What's the correct way?

luisrecuenco commented 10 years ago

So, in case you have three levels, you have a few options:

Use three panels:

1 - Make leftViewController your list grid controller. 2 - Make mainViewcontroller your item detail controller 3 - Make rightViewController your item further details controllers

Use two panels:

1 - Make leftViewController your list grid controller. 2 - Make mainViewController a navigationController, let the rootViewController be your detail view controller and push your further detail controller onto the nav controller.

To return to the left view controller from your detail view controller or your further details view controller, make sure to access the correct scrollingSidebarController, i.e., self.navigationController.scrollingSidebarController.

Hope that helps.