Berry Blue
Berry Blue

Reputation: 16482

Showing a toolbar in pushed view controller in tab bar controller

I have a navigation controller in a tab bar controller. When I push a new view controller I want to show the toolbar. I'm doing that like this from the pushed view controller.

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    [self.navigationController setToolbarHidden:NO animated:NO];
}

This works but the toolbar slides up from it's normal position where the tab bar is to go above it. I want it to appear without this "slide up" animation above the tab bar. Is that possible?

Here is my setup. The "slide up" animation occurs when pushing from view controller 1 to view controller 2. I only want the toolbar to appear in view controller 2.

[Tab Bar Controller]
  - [Navigation Controller]
     - [View Controller 1] -> Push -> [View Controller 2]

Upvotes: 4

Views: 1118

Answers (4)

aman.sood
aman.sood

Reputation: 874

Move [self.navigationController setToolbarHidden:NO animated:NO]; from viewWillAppearto viewDidloadthat should work.

Upvotes: 2

Tomer Even
Tomer Even

Reputation: 4980

Make sure that in the storyboard all the view controllers have the "hide bottom bar" property unchecked

enter image description here

Upvotes: 2

tommybananas
tommybananas

Reputation: 5736

Have you tried destinationVC.hidesBottomBarWhenPushed = YES;?

Apple docs

Upvotes: 2

Tomer Even
Tomer Even

Reputation: 4980

Put your navigation controller embedded inside in your tab bar controller instead of the other way around.

So the tab bar will have the Nav bar as one of its view controllers

Upvotes: 2

Related Questions