关于导航栏的问题

Questions about navigation bar

  1. 我对导航控制器和内容视图控制器的关系感到困惑。在故事板中,导航栏在导航控制器下,所以我将它链接到 NavigationController class,然后在 viewDidLoad 函数中自定义导航栏。但是,由于不同的内容视图会有不同的导航栏,比如不同的栏按钮,我该如何实现呢?一些基本的想法就足够了。我的猜测是我需要在特定的内容视图控制器中指定特定的栏按钮,但是由于 navigationBar 属性 在 NavigationController class 中,我该如何引用它?

  2. 我想隐藏导航栏的标题,让导航栏只显示一些自定义按钮(我知道工具栏可能更匹配,但我有其他原因采用导航栏)。请详细告诉我如何隐藏标题,首选swift语言

1) 每个 ViewController 实例都有一个 navigationController 属性,它只是一个可选的。要设置栏按钮,您需要使用 navigationItem。因此,要指定条形按钮,您可以在每个视图控制器的界面生成器中执行此操作,或者在 viewDidLoad

中执行类似的操作
let navBarButton = UIBarButtonItem()...set up bar button
self.navigationItem?.leftBarButtonItem = navBarButton

2) 隐藏标题很简单:

self.navigationItem?.title = ""