隐藏导航栏的标题

时间:2011-07-06 19:22:13

标签: iphone objective-c uinavigationcontroller uinavigationbar

我的第一个名为“返回”的视图。我需要隐藏导航栏的标题,因为我有自定义导航栏。

我尝试使用此代码,但它无效!

self.title = @"back";
self.navigationController.navigationItem.titleView.hidden = YES;

5 个答案:

答案 0 :(得分:11)

刚遇到同样的问题,并且正在做:

self.title = @"YourTitle";
self.navigationItem.titleView = [[UIView alloc] init];

诀窍。下一个视图的后退按钮将标有 YourTitle ,但在第一个视图中,标题将不会显示。

答案 1 :(得分:7)

如果要隐藏整个导航栏,如果要使用自己的导航栏,可以先隐藏导航控制器的导航栏。

[self.navigationController setNavigationBarHidden:YES];

或者如果你只想隐藏你可以做的标题

self.title = @"";

或者如果您使用导航栏的自定义标题视图,则可以执行

self.navigationItem.titleView.hidden = YES;

或者如果你想隐藏条形按钮项,你可以

self.navigationItem.hidesBackButton = TRUE;

答案 2 :(得分:2)

遇到同样的问题,我只是创建一个虚假的UIView来填充titleView属性并隐藏它:

UIView *fakeTitleView = [[UIView alloc] init];
fakeTitleView.hidden = YES;
[self.navigationItem setTitleView:fakeTitleView];
[fakeTitleView release];

希望它可以提供帮助。

答案 3 :(得分:2)

保留后退按钮的另一个选项:

[self.navigationController.navigationBar setTitleTextAttributes:@{
    NSForegroundColorAttributeName : [UIColor clearColor]
}];

答案 4 :(得分:0)

迅捷

self.navigationItem.title = "your title" // So title shows nav "back" button
self.navigationItem.titleView = UIView() // To hide the title on this View Controller

我把它放在viewWillAppear