NavigationController +工具栏

时间:2010-06-25 16:44:45

标签: iphone objective-c

我正在使用NavController,但我启用了底部的工具栏。我还添加了UIBarButtonItem并在IB上显示。它基本上看起来像

  • 导航控制器
    • 导航栏
    • 工具栏
    • Root View Controller
      • 栏扣项目
      • 导航项目

所以在根视图控制器下添加了条形按钮,我可以在工具栏所在的IB中看到它,但是当我运行它时,我可以看到工具栏,但不能看到我称为Item1作为其文本的项目!

帮助

2 个答案:

答案 0 :(得分:3)

由于这些原因,我总是发现以编程方式而不是在Interface Builder中处理NavigationController的工具栏更好。步骤是

  1. 告诉导航控制器显示工具栏[navController setToolbarHidden:NO animated:YES]。听起来你已经完成了这一步。
  2. 创建您的UIBarButtonItems。将ViewController设置为条形按钮的目标。
  3. 将栏按钮项添加到NSArray。包含UIBarButtonSystemItemFlexibleSpaceUIBarButtonSystemItemFixedSpace类型的按钮项,以便在工具栏上将它们排列在您想要的位置。将数组设置为工具栏的items属性。
  4. 编写处理当用户点击这些按钮时会发生什么的方法。
  5. 确保根据需要释放您创建的所有这些对象。
  6. 无需任何子类化。如果这仍然不适合您,请随时询问更多。

答案 1 :(得分:0)

如果要在RootView控制器级别添加Bar按钮项,则需要导航控制器 - > ToolBar控制器 - > RootViewContoller。

否则,你有工具栏视图的子类,为其上的工具栏按钮设置IBOutlet,并为Button文本执行setButtonText方法。然后,您可以在Root View控制器中包含该子类,并调用setButtonText方法。

相关问题