I'm currently developing an app for a client which makes use of a tabbar, but I'm concerned I may be violating the human interface guidelines.
My app starts with a home viewcontroller which leads to several other viewcontrollers. One of the viewcontrollers has a tabbar. The very first item on the tab bar is a home button. Clicking the button will send the user back to the home viewcontroller. The home view controller does not have a tabbar.
The question of the hour ... is this a violation of the human interface guidelines?
I know the suggested route would be to use a navigation controller and my client may certainly agree to it, but I'm concerned if the current configuration is doable.
Thanks for your advice
Firstly I would say that it violates the HIG in that this is unexpected behaviour to iOS users. In the HIG it states that you should embrace IOS UI Paradigms, which means that you should not mimic built-in apps, but follow the design patterns of those apps. What you are trying to achieve is something that the user does not expect (as this is not normal behaviour) and therefore is not really the right way to go.
It also might violate the HIG in:
In general, use a tab bar to organize information at the application level. A tab bar is well suited for use in the main app view because it's a good way to flatten your information hierarchy and provide access to several peer information categories or modes at one time.
Your application puts a tab bar inside the app and not at the application level. But as the text says, you should generally adhere to this.
However I do not think it is particularly good UI to do this, as it is confusing to the user. At one moment there is a tab bar and then when pressing a tab the tab bar is gone. I would definitely rethink the UI problem you have and use another mechanism for it (like UINavigationController) or try to use the tab bar differently by using it at the application level.