在弹出thumb viewcontroller后,View控制器正在我的导航栏下绘图

时间:2010-02-18 06:02:32

标签: iphone uinavigationcontroller three20

我正在从Three20项目实现TTThumbsViewController,事情终于开始成形。我将TTThumbsViewController从当前视图控制器推出,只需将其推入当前堆栈并设置转换动画(通用导航控制器推送)。

我的问题是当我弹出TThumbsViewController视图控制器时,导航控制器卡在导航栏(现在是半透明的)下绘制视图控制器的模式。

开始

alt text

alt text

弹出

alt text

2 个答案:

答案 0 :(得分:10)

您需要重新配置状态栏,导航栏和原型的原始样式。视图重新出现时的工具栏。您可以通过在视图控制器中实现viewWillAppear:来执行此操作:

- (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];
}

答案 1 :(得分:1)

看起来你正在推动的视图控制器不会从TTViewController继承。视图从堆栈中弹出后,您可能还需要将'navigationBarTintColor'属性设置回原始颜色;如果你还没有设置全局样式表。