如何在故事板中设置导航栏的标题?

时间:2014-10-25 16:54:18

标签: ios objective-c uinavigationbar xcode6

尽管我付出了最大的努力,但我无法解决这个问题。我也在这里查阅了Apple文档和几个相关的问题,但我仍然存在心理障碍。

使用Xcode 6,我在导航控制器中嵌入了一个表视图控制器,可以在表视图控制器中设置导航栏的标题,但不能在通过segues连接到表视图的两个视图控制器中设置。 / p>

我确实认为这两个视图控制器上有一个导航栏,因为在我将导航控制器中的表视图控制器嵌入后,它阻止了我最顶层的文本字段。我重新定位,这不是问题,但在故事板中,我似乎仍然无法在导航栏中单击以添加标题,现在手动添加导航栏以测试它,我可以看到文档大纲中只有一个导航栏。

那么您只需要以编程方式设置导航栏的标题,还是使用IBOutlet或其他类似设置?似乎你不能在故事板上点击它。

10 个答案:

答案 0 :(得分:32)

我很确定这是xCode中的一个错误...我遇到了同样的问题,大部分时间都是通过重启xCode解决的。

**此外,您可以通过以下方式解决问题:

将导航项从对象窗格拖到viewcontroller或tableviewcontroller中。这似乎对我有用。我注意到“文档大纲窗格”中缺少导航区域。

我希望这会有所帮助。

答案 1 :(得分:5)

尝试以编程方式设置标题 - > self.navigationItem.title = @“REGISTER”;

答案 2 :(得分:5)

我遇到了同样的问题。对我有用的是选择我无法设置标题的控制器,点击编辑器 - >嵌入 - >导航控制器。

然后您应该可以编辑标题,完成后,删除导航控制器并重新连接两个原始控制器。

之前嵌入的屏幕现在应包含您之前创建的标题。

答案 3 :(得分:4)

在跟随苹果的快速指导时,我遇到了同样的问题。 Dubble-点击"导航栏"对我没有任何作用。 我是如何解决的:

1:选择"导航项"从文档大纲窗格中。

2:打开属性检查器。

3:选择标题字段并在此处写下标题。

答案 4 :(得分:2)

这是你准备segue:         [segue.destinationViewController setTitle:@" New Task"];

答案 5 :(得分:1)

在嵌入控制器时,请务必使用关系Segue,而不是手动Segue。

答案 6 :(得分:1)

如果其他人需要,请更新此问题:

  1. 在ViewControllers之间制作一个segue
  2. 选择种类选项作为显示(e。推送)
  3. 在某些已弃用的情况下更改此Kind选项 - 例如。推
  4. 现在您可以从故事板
  5. 编辑您的tittle和导航项目
  6. 请记住再次根据需要更改Kind选项。

答案 7 :(得分:1)

没有一个答案对我有用。

这有效:

  1. 删除导航连接
  2. Ctrl拖动新的导航连接
  3. 将其设为连接
  4. 现在您可以编辑标题
  5. 再次删除导航连接
  6. 再次创建原始导航连接类型
  7. 这似乎确实是IB中的一个错误

答案 8 :(得分:1)

您还可以改为设置视图控制器的“ title”属性,该属性将自动设置导航项或标签栏项的标题。

通过在情节提要中选择视图控制器,可以在“属性”检查器(Xcode 9)的“视图控制器”下设置标题:

enter image description here

答案 9 :(得分:0)

将您的导航项目连接到您的班级(即UIViewController),并通过在viewDidLoad中编写以下内容以编程方式访问其标题:

navigationItem.title = "whateverTextHere"