Question

I'm implementing the TTThumbsViewController from the Three20 project and things are finally starting to take shape. I push the TTThumbsViewController from the current view controller by just pushing it onto the current stack and animate the transition (common navigation controller push).

My problem is that when I pop the TThumbsViewController view controller, the navigation controller is stuck in a mode where its view controllers are drawn UNDER the navigation bar (which is now translucent).

Start

alt text

Push

alt text

Pop

alt text

Was it helpful?

Solution

You need to reconfigure the original style of the status bar, navigation bar & tool bar when your view reappears. You can do this by implementing viewWillAppear: in your view controller:

- (void)viewWillAppear:(BOOL)animated {
  [super viewWillAppear:animated];

  UINavigationController* navController = self.navigationController;
  navController.navigationBar.barStyle = UIBarStyleDefault;
  navController.navigationBar.tintColor = [UIColor redColor];
  navController.toolbar.tintColor = [UIColor redColor];

  [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault animated:YES];
}

OTHER TIPS

It looks like the view controller you are pushing from does not inherit from TTViewController. You may also need to set the 'navigationBarTintColor' property back to your original color after the view has been popped off the stack; if you have not set a global stylesheet.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top