4

出于某种原因,当我以前只有

self.title = @"Title";

让标题栏显示出来......但现在在 iOS 7 中它不会显示任何内容。

我已经为此工作了大约 2 个小时......我什至无法启动并运行标题栏。

我也试过

self.navigationController.navigationBar.topItem.title = @"Title";
self.navigationItem.title = @"Title";

以上都不起作用。

这是我的代码:

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.title = @"Title";
    self.navigationItem.title = @"Title";
    self.navigationController.navigationBar.topItem.title = @"Title";
    // Do any additional setup after loading the view.
}

我不知道还能尝试什么,我刚刚下载了最新版本的 iOS 7/Xcode,并使用了标签模板。

我对 Xcode 真的很陌生,所以我真的不知道我在做什么。


编辑,更多信息如下:

第一张图片

第二张图片

第三张图片

第四张图片

第五张图片

4

4 回答 4

6

您所做的只是设置“模拟指标”。就是这样:它模拟导航栏。它实际上并没有给你一个导航栏。你是说你不需要实际导航,所以你不需要导航控制器。尽管这是一种非常好的方法,但导航控制器具有更多好处。例如,设置self.title不适用于独立导航栏,但导航控制器将其导航栏的标题设置为任何self.title内容。

所以,在你的情况下,我会简单地将你的视图控制器嵌入到导航控制器中,即使你没有使用任何实际的导航功能。

于 2013-09-19T00:03:13.447 回答
0

您还可以将导航项声明为 IBOutlet,然后更改该插座的标题,如下所示

在.h

IBOutlet UINavigationItem *navItem;

navItem.title = @"New Title";

这也有效,但请确保在 Interface builder 中链接插座。

于 2013-12-05T14:00:25.153 回答
0
self.title=@"!@#$%^&*()";
UILabel *headlinelabel = [UILabel new];
headlinelabel.font = [UIFont fontWithName:@"Avenir-Light" size:28];
headlinelabel.textAlignment = NSTextAlignmentCenter;
headlinelabel.textColor = [UIColor customBlueColor];

NSMutableAttributedString *attributedString =[[NSMutableAttributedString alloc] initWithString:self.title];
headlinelabel.attributedText = attributedString;
[headlinelabel sizeToFit];
[self.navigationItem setTitleView:headlinelabel];

你可以试试这个):

于 2015-04-02T14:09:35.847 回答
0

试用

self.navigationController.navigationBar.topItem.title = @"The Title";
于 2016-06-07T05:57:49.873 回答