views:

355

answers:

2

I have a UIViewController (aViewController) added to a UINavigationController which in turn is added to a UITabBarController.

I then use [self.navigationController presentModalViewController:animated] within aViewController to present a new view controller (bViewController).

However bViewController is always displayed full screen, thus hiding the UITabBarController.

What can I do to ensure the UITabBarController is always visible when bViewController is presented modally?

A: 

You could probably set the frame of the modal view to only be as high as the view undernearth minus the height of the UITabBarController.

cory.m.smith
+1  A: 

The whole idea of a modal view controller is to prevent any further interaction until the modal view is dismissed. It may be that you want interaction with the tab bar controller, which means you don't want to use the modal view. Or, to comply with best practice, use modal view as it was intended.

Jordan
What he said. If you don't want tab bar interaction, you might simply use a non-modal view that has a transparent "window" that shows the tab bar but doesn't allow user interface interaction through it. If you just want a simple animation, check out `UIView beginAnimations::`
Nimrod