如何在导航栏上为单个视图上的不同按钮设置标题?

Posted

技术标签:

【中文标题】如何在导航栏上为单个视图上的不同按钮设置标题?【英文标题】:How to set title on the navigation bar for different buttons on a single view? 【发布时间】:2011-10-07 21:18:52 【问题描述】:

我的 iPad 应用有 3 个视图。欢迎屏幕 -> 主屏幕 -> 详细信息屏幕

主屏幕有 6 个按钮。所有这些按钮都有不同的数据,这些数据显示在与按下的按钮相关的详细屏幕上。我想为详细屏幕导航栏上的每个按钮设置一个标题。所以导航栏上会有6个标题。我已将按钮标记为 1 到 6。 请指导 谢谢

【问题讨论】:

【参考方案1】:

如果你有导航控制器,那么你只需要设置细节屏幕的视图控制器的title 属性。导航栏会自动将其标签更新为当前视图控制器的标题。

所以如果你有按钮操作:

- (IBAction)buttonPressed:(id)sender 
    UIButton *button = (UIButton *)sender;
    NSString *title = [button text];
    DetailScreenViewController *detail = [[DetailScreenViewController alloc] initWithDetail:title];
    [detail setTitle:title];
    [navigationController pushViewController:detail animated:YES];
    [detail release];

【讨论】:

我认为 DetailScreenViewController 会自行释放? 对不起,我是把它写成概念性的。我已经改过了。【参考方案2】:

在你推送视图控制器之前,设置它的标题。

thisViewController.title = @"My Title";
[navigationController pushViewController: thisViewController animated:YES];

【讨论】:

【参考方案3】:

当用新内容更新视图时,更新视图控制器的标题:

viewController.title = @"New Title";

【讨论】:

@Legolas 谢谢,我修正了这个例子。不知道发生了什么。

以上是关于如何在导航栏上为单个视图上的不同按钮设置标题?的主要内容,如果未能解决你的问题,请参考以下文章

导航栏上的后退按钮仅显示没有单词的指示器

导航栏上的 iOS::Button 仅出现在根视图控制器上

如何在 XCUITest 中访问导航栏上的右键项目按钮?

使用swift在选项卡式视图中的导航栏上添加按钮

导航栏上的后退按钮故障/错误

如何更改导航栏上“返回”按钮的标题