JustSid
JustSid

Reputation: 25318

Alternatives to an UITabBar in navigation based app

So, I have a fairly typical app with UITableViewController's inside of an UINavigationController, the cells of the table views are fairly large since they display a title and three lines of preview text, similar to an RSS reader, so I decided against an UITabBar which would eat another huge amount of the screen space making it impossible to see more than four cells. However, I have two other screens I want to display, favorites and settings, together with one main landing page, so I need a way to navigate between those three.

My problem is; what UI control can I use instead of an UITabBar? I thought about an UIToolBar but that feels totally wrong, a swipe-able UINavigationBar seems to be quite okay from a UX perspective, but I guess not many users will get that. I also thought about embedding everything in an paged and horizontal UIScrollView, but that doesn't work with the swipe to delete table view feature.

Any ideas about a cool and intuitive control?

Upvotes: 0

Views: 1622

Answers (2)

Thomas Clayson
Thomas Clayson

Reputation: 29935

It would probably be a good idea to ask this on ux.se too.

There are a few things that I can think of that you can do.

The easiest (and most expected) would be to use a UITabBarController. Now this is the expected element for switching between UINavigationControllers and is probably what you should use, but I understand about the lack of space. As you say, your table cells are quite tall.

The next thing I'm thinking of is implementing something a bit more custom into the app itself. Taking cues from the latest iteration of the facebook app they manage to reduce space in two ways. Firstly they have a menu button on the navigation controller which slides the whole window to the right and displays a menu on the left. This would work well within your app, although it may be quite difficult to implement.

The other thing you can do is if you open the "notifications" view it floats on top of the content of the app in a popup speech bubble style widget. This is another way that you could switch between views. This would be much easier to implement if you so chose.

Here are some pictures of the two implementations:

Facebook App

Otherwise, you could implement something like the twitter for android app. They have a tab bar controller but its custom and not as tall as normal. As you can see they manage to get lots of content into the app still.

twitter for android app

It might be useful to reduce the font size in your app, or adjust the design. You should be able to get enough content in with a navigation bar and a tab bar controller to be honest.

If you need any more help, ask on ux.stackexchange.com or maybe post some screenshots of your app for us to see.

Upvotes: 2

Totumus Maximus
Totumus Maximus

Reputation: 7583

I've lately seen a very interesting way of showing ViewControllers.

By using the ZUUIRevealController you can put your working VC away with a fairly easy swipe/press of a button.

Watch this tutorial. http://www.youtube.com/watch?v=nDYHFMYoDcU

GitHub link: https://github.com/pkluz/ZUUIRevealController

I'm sure you will like it^^

Upvotes: 4

Related Questions