如何在界面构建器中添加一个按钮栏项?

17

我对iPhone开发非常陌生,需要帮助设置视图。

我有一个名为FirstViewController.xib的视图和该视图的控制器类。

在我的MainWindox.xib中,我设置了一个根控制器和一个moveToNextView函数,该函数连接到选项栏按钮项。

因此,当我点击此项时,当前视图会切换到第一个视图,并且我可以切换回来。到目前为止都很好。

来自MainWindow.xib顶部的导航栏也显示在第一个视图中。但是,当我打开 FirstViewController.xib 时,没有定义任何导航栏(但在构建和运行时会显示)。

这对我来说是个问题,因为我想在第一个视图中添加一个保存的bar item。我该怎么解决?

3个回答

19
假设您有一个UIViewController(或UIViewController子类),它是UINavigationController的子视图控制器。请注意,我正在使用storyboards,因此使用xibs时可能会有所不同。
  • 如果您没有在接口上看到UINavigationBar,请尝试手动更改模拟指标。

  • 将一个Navigation Item拖到视图上(任何位置)。 现在,您应该有一个可以在界面构建器中输入标题的位置。

Simulated Metrics

  • 现在,您可以将Bar Button Items拖到导航栏上。

enter image description here


这是一个xib的问题,而不是storyboard的问题。 - Sulthan

10

您需要通过代码来实现。在您的FirstViewController类中添加viewDidLoad方法:

  UIBarButtonItem *anotherButton = [[UIBarButtonItem alloc] initWithTitle:@"Save" style:UIBarButtonItemStyleDone target:self action:@selector(doSave:)];
  self.navigationItem.rightBarButtonItem = anotherButton;
  [anotherButton release];

3
在Interface Builder中,只需将一个条形按钮项拖动到导航栏上即可。Xcode会自动连接它,然后您就可以像使用其他任何东西一样使用它...

11
在使用Storyboard时,它按预期工作。但在独立的视图控制器XIB上却不起作用。我将我们的应用从Storyboard转换为XIB(必须支持iOS4),这是一件令人困惑的事情之一。 - n13
2
不支持Xcode 6。这是苹果让我们的生活更轻松了。 - Duck
1
只有在您已经将导航项拖到视图上时,它才能正常工作。请参阅我的答案。 - anders

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接