主/详细应用程序中的NavigationItem

时间:2012-12-22 16:53:48

标签: ios uinavigationitem

我使用XCode的Master / Detail模板编写了Master / Detail应用程序。启动应用程序后,主视图的导航按钮的标题只是" Master"。现在我想重命名那个按钮,但不幸的是我不知道如何访问这个按钮。 在appdelegate.m中,有以下代码来初始化视图:

MasterViewController *masterViewController = [[MasterViewController alloc] init];
UINavigationController *masterNavigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];

DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
UINavigationController *detailNavigationController = [[UINavigationController alloc] initWithRootViewController:detailViewController]

我尝试了这些方法但没有成功:

masterViewController.navigationItem.title = @"newTitle";

masterNavigationController.navigationItem.title = @"newTitle";

由于我不确定,如果按钮的名称只是idt后面的视图的标题,我也尝试过:

masterViewController.title = @" newTitle";

没有任何效果。但由于按钮的标题是" Master"我肯定没有设置它,我相信必须有一些方法来设置它。有谁知道怎么做?

只是为了显示按钮: enter image description here

4 个答案:

答案 0 :(得分:6)

如果您已使用主/明细模板创建了主/明细胞应用程序,则转到您的"MasterViewController.m"文件并根据需要更改字符串“主”。请参阅下面的图片MasterViewController.m中的图片。 enter image description here

<强>更新 并更改barButtonItem中的DetailViewController.m名称,如下所示。这样就可以了。 enter image description here

答案 1 :(得分:1)

在MasterViewController.m文件的viewDidLoad()中尝试self.navigationItem.title = @"newTitle";。或者在init()方法中self.title = @"newTitle"。 HTH。

答案 2 :(得分:1)

我假设您正在尝试更改后退按钮属性的标题。 这是通过将以下代码放在-viewDidLoad的{​​{1}}方法中来完成的。

MasterViewController

答案 3 :(得分:0)

它已经有一段时间了,不知何故,当前的Xcode版本8.3.2它的工作方式不同:

如果您已使用主/明细模板创建了主/明细表应用程序,请转到redis-cli -p 6379 KEYS "key_pattern" | wc -l并选择Main.storyboard中的Master,然后显示&#34;属性检查员&#34;。在导航项目区域中,您可以更改Master Scene

您可以为Title以及Master执行此操作。 enter image description here