ios - 如何在 ViewController 顶部设置标题

标签 ios swift cocoa-touch

在我的应用程序中,我有一个 tabBarViewController,这是第一个栏:

class FirstViewController: UIViewController {

  override func viewDidLoad() {
    super.viewDidLoad()
    view.backgroundColor = UIColor.white
  }

  override func viewWillAppear(_ animated: Bool) {
    self.navigationItem.title = "RECENTS"
  }

}

这是自定义类:

class CustomTabBar: UITabBarController {

  override func viewDidLoad() {
    super.viewDidLoad()

    let firstVC = FirstViewController()
    let secondVC = SecondViewController()
    let thirdVC = ThirdViewController()

    firstVC.tabBarItem.title = "RECENT"
    secondVC.tabBarItem.title = "MAP"
    thirdVC.tabBarItem.title = "SETTINGS"

    firstVC.title = "RECENT"
    secondVC.title = "MAP"
    thirdVC.title = "SETTINGS"

    viewControllers = [firstVC,secondVC,thirdVC]
  }

}

所以我的问题是:如何将标题放在 View Controller 的顶部? 在之前的代码中我试过了,但它不起作用!

是这样的: enter image description here

最佳答案

title 属性在 View Controller 包装在 UINavigationController 中时显示。这里有一些代码替换了你示例中的最后一行(即 viewControllers 分配),应该可以解决问题:

let firstNC = UINavigationController(rootViewController: firstVC)
let secondNC = UINavigationController(rootViewController: secondVC)
let thirdNC = UINavigationController(rootViewController: thirdVC)
viewControllers = [firstNC,secondNC,thirdNC]

关于ios - 如何在 ViewController 顶部设置标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48389292/

相关文章:

ios - 如何删除或清除 UITextField

ios - swift ios 一遍又一遍地更改 uilabel 文本值

ios - google ios SDK swift fit bounds

ios - 如何快速观察firebase数据库中子子节点的值变化?

ios - 获取细胞索引-偷看和流行

html - iOS - UIWebView 加载 HTML 字符串包含 iframe 不起作用

ios - '应用程序试图用 swift 3 模态呈现一个事件 Controller '

ios - 捕获异常有什么用?

iphone - nibNameOrNil 的真正含义是什么?

ios - 类型 'UIViewController' 的值没有名为 JSON 的成员 'jsonfile'