UINavigationController UIToolBar不会显示在我的视图中

时间:2012-11-02 08:10:12

标签: objective-c ios xcode

我的UINavigationController包含一个带有3个UIBarBottomItems的UIToolBar - 它已经在故事板中进行了拖放设计。我希望在我的所有视图中共享这个UIToolbar。因此我设置了“显示工具栏”。但是当我运行它时,UIToolBar在我的所有视图中都是空的。这可能是什么原因?

3 个答案:

答案 0 :(得分:1)

我意识到这是一个老线程,但我一直在努力解决这个问题几个小时,最终弄清楚出了什么问题。这是一件简单的事情,以为我会分享。我在viewDidLoad中调用了[self.navigationController setToolbarHidden:NO];。问题是viewDidLoad在视图控制器被推送到navigationController之前被调用,因此self.navigationController是nil。我将代码移动到viewWillAppear:方法并且它有效。

答案 1 :(得分:0)

UINavigationController有默认工具栏。你可以使用。你可以使用以下代码

[self.navigationController setToolbarHidden:NO];

在最顶层的视图控制器和

[self setToolbarItems:items];

在所有视图控制器中,其中items是该视图控制器工具栏项的NSArray。

答案 2 :(得分:0)

在故事板中选择您的初始视图控制器并将其嵌入导航控制器中。 现在你的所有页面都应该有导航栏..如果你在你运行程序时手动拖动掉了之前的栏,它将显示两个... 您必须删除旧的,然后根据需要修改新的。