如何从第一个View控制器进入的第二个UIView Controller中删除UINavigationBar label.text?

时间:2014-01-28 13:12:34

标签: ios cocoa-touch uikit uinavigationbar uinavigationitem

我有一个标签,我在UINavigationBar上使用addSubView属性显示,我得到的结果是:enter image description here

但是当我要访问secondView Controller时,它看起来像:enter image description here

它出现在第二个控制器的后退按钮上。那么如何从第二个UI中删除“状态”标签。

谢谢。

3 个答案:

答案 0 :(得分:1)

不要将子视图添加到导航栏。它不是为此而做的。 我建议您阅读iOS human interface guidelines并使用UIBarButtonItem将控件正确添加到导航栏。

答案 1 :(得分:0)

您应该标记子视图并在第二个视图控制器的导航栏的子视图中搜索它,然后[subview removeFromSuperview]

您不应该将子视图添加到导航栏,您可以使用导航项来实现这种类型的东西。您可以使用UIBarButtonItem初始化initWithCustomView:,其中包含该标签。

答案 2 :(得分:0)

在第一个View控制器中 -

-(void)viewWillAppear:(BOOL)animated 
{
    //Add Label on UINavigationBar
      [super viewWillAppear:animated];
      [self.navigationController.navigationBar addSubview:navLabel];
}

-(void)viewWillDisappear:(BOOL)animated 
{
    // Remove label from UINavigationBar
    [super viewWillDisappear:animated];
    [navLabel removeFromSuperview];
}