The app is about inventory management. It has a bottom bar with 5 tabs (the last is a "More" tab).
Each tab is a fairly independent functional unit. Many of them need the user to select an inventory (or other similar grouping-entities), in order to display the content in the tab.
My first inclination was simply to make each tab a navigation controller. So the first view controller is a table view, where I display the inventory, and can add, edit, etc. them, and when I tap on one I show the view controller with all the things I can do inside each inventory.
My problem with this is that, from user's perspective, it feels a bit like overkill. In most cases the user should assume there's an inventory/group, and just start managing items inside it. The management of additional inventory should not be central in the app. Rather something that can be done—but not the first thing user sees when selecting a tab.
I'm contemplating different possibilities to replace the navigation controller. So far:
Side menu. Since the management of inventory is a secondary task, I thought this might be the best fit. The problem is that iOS side menus normally shift/cover the view controller containing the tabs, and this looks like it's something persistent across the app and not in the context of the current tab where I am. I need it to change for each tab. Further options, like settings, user profile, etc. are currently in the tabs! So the side menu would be only for my tabs where I need to select or create an inventory or my other groups. In tabs like user profile, settings, etc. there would be no side menu.
Drop down navigation controller (like this https://github.com/nmattisson/DropdownMenu) but the problems I see here are:
- Some tabs still won't have it.
- It has to change for each tab.
- It needs an Add or Edit button in order to add or edit inventory/groups. It seems that the dropdown would be overcrowded.
An additional button or row in each of my inventory/group—related tabs, which I can tap to show a popup/dropdown/modal view controller, where users can select, add, edit etc. their inventory/groups. But this could make the UI too complex and overcrowded, in my opinion.
A tab for the inventory in addition to the other groups, where the user can edit, add, etc. the inventory. But it would be still open to have an item inside the tabs that depend on them in order to select one. Here, again, I need to make a UI decision: dropdown, additional button, etc?
Start with the detail view controller, so skip the navigation controller, maybe replace the Back symbol in the upper left with only text e.g. "Inventory", giving basically the impression that my detail-view controller is the "main" view controller?