I'm working on an iPhone app for musicians. It allows you to import songs from several sources, select one and do different things with it, like display its lyrics, control playback and other things. The best way to structure these things would probably be using a tab bar, as there are 4+ separate views that I want to display.
Somehow I have to allow the user to select the song he wants to play, before he can use any of all those tabs. I've thought about presenting the songs in a list, and then pushing the tab bar view from the right. But apparently pushing tab bars is not allowed as they should always be the root view when used.
Then I thought of making the tab bar view the main one and adding a "Songs" button on the top left (where the "< Songs" back button would be, if the tab view was pushed) and presenting the song list modally from the bottom. But then, what do I do on first launch? Display a confusing empty playback view? Take over control and present the song list automatically? Or just launch in the song list view?
An other issue would be, where to put global app settings and contact information? Wouldn't it be confusing the put that into a tab? Usually, tabs display the same information in different ways, or information that is related. That would imply that those settings are on a per song level, instead of being global app settings.