7

在此处输入图像描述我有一个标签栏视图控制器,它有四个可能的视图控制器。我的所有其他视图都有关系的主选项卡栏视图也有一个导航栏,我可以双击它并更改故事板中的标题。我需要知道的是如何根据选定的标签栏项目更改此导航项目的标题。

例如,我将有四个选项卡。1 是“账单”,2 是“杂货”,3 是“煤气”,4 是“个人”。如果选择了“账单选项卡”等等,我希望我的视图的标题是账单。

编辑:希望这将澄清我想要完成的事情。

我希望能够更改右侧四个表格视图顶部导航栏的标题。Tab Bar Controller 是我唯一可以在情节提要时双击并更改磁贴的地方。我希望根据从选项卡栏中选择的表格视图来更改标题。

4

4 回答 4

2

删除您手动添加到视图控制器的任何导航栏项目并将其添加到您的viewDidLoad方法中

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

或者

self.navigationController.topViewController.title = @"My Title";
于 2015-08-24T08:44:10.273 回答
1

我应该警告您,这种方法可能是一种不雅的技巧,因为我自己才刚刚开始了解导航。但这是我将如何处理它:

基本上,您应该UINavigationItem为每个UIViewController想要标题的 s 添加 a ,并UINavigationItem根据UIViewController显示的内容更改 s 的文本。

于 2013-01-04T01:58:29.060 回答
1

在每个选项卡选择上,您都可以更改标题。

   - (void)tabBarController:(UITabBarController *)tabBarController 
     didSelectViewController:(UIViewController *)viewController
    {
      viewController.title=@"your title"
    }
于 2013-01-03T04:15:46.397 回答
1

您应该能够在每个“四个视图控制器”中设置 title 属性,如下所示:

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.title = @"Title For View Controller Goes Here";
}

然后,每当单击此视图控制器的所述选项卡时,导航栏的标题应更改为此标题。

编辑

听起来您可能已将UINavigationBarInterface Builder 中的对象放置在选项卡栏的视图中。相反,您实际上希望将UITabBarController嵌入在UINavigationController.

阅读 Ray Wenderlich 的关于开始故事板的教程,这应该会告诉你如何做到这一点:

http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1

祝你好运!

于 2013-01-03T01:21:03.737 回答