UIToolbar和其他视图

时间:2009-03-19 19:45:07

标签: iphone uitoolbar

我知道如何添加UIToolbar,我在rootviewcontroller.m中做了:

[self.navigationController.view addSubview:toolbar];

然而,当我导航到其他视图时,工具栏保持不变,这没关系,但是如何访问它来隐藏/显示它呢?

在rootviewcontroller里面我会用这个:

toolbar.hidden = NO;

但我似乎无法在rootviewcontroller.m

之外找到一种方法

你能告诉我一个将它藏在另一个班级的例子吗?

4 个答案:

答案 0 :(得分:3)

有两种选择;

1)向控制器添加属性,以便外部类可以访问工具栏对象。

2)向根视图控制器添加一个可用于驯服工具栏的函数。

我建议#2,因为它限制了外部类可以做的事情。

E.g。

-(void) hideToolbar:(BOOL)hidden
{
  toolbar.hidden = hidden;
}

答案 1 :(得分:2)

问题是你不应该将它添加到self.navigationController.view;你应该把它添加到self.view。纠正这个问题应该为你解决。

答案 2 :(得分:0)

您可以尝试在视图控制器的初始化期间添加以下行,您不希望该栏显示。

[self.navigationController setToolbarHidden:YES animated:NO];

F。

答案 3 :(得分:-1)

安德鲁·格兰特的答案正是你要找的。但是,您应该将方法重命名为

-(void) isToolbarHidden:(BOOL)hidden {
    toolbar.hidden = hidden;

}

在查看代码时更有意义。