以编程方式创建视图时未调用ViewWillAppear / Disappear

时间:2011-02-18 00:43:56

标签: iphone

我有一个根视图控制器类。这个视图有很少的按钮。点击按钮,我显示标签栏。所以基本上,我有标签栏和导航控件的实现。基本上,我有以表格视图格式显示的数据。另一个视图是以编程方式创建的。

现在,问题在于根视图我可以使用

隐藏导航栏

[self.navigationController setNavigationBarHidden:YES animated:animated];

但是,当我点击按钮时,导航栏将隐藏在下一个视图上。我尝试在viewdidappear和viewdiddisapear方法上放置中断,但这些方法不会被触发。

您能否帮我解决如何确保触发这些方法或如何在第一个视图中显示导航控制器。

2 个答案:

答案 0 :(得分:1)

类似的问题一遍又一遍地发布在SO上。这是一个很好的解释,查看这篇文章,注意@cduhn给出的答案。

push viewcontroller using UINavigationController sometimes calls viewDidAppear: and viewWillAppear:

答案 1 :(得分:0)

使用

- (void)viewWillAppear:(BOOL)animated and - (void)viewWillDisappear:(BOOL)animated

并在哪个按钮上单击要隐藏选项卡

[self.navigationController setNavigationBarHidden:YES animated:animated];

之前推送

正在使用,现在在viewWillDisappear中使用

[self.navigationController setNavigationBarHidden:NO animated:animated];