我有一个标题导航栏。 当我双击文本重命名它时,它实际上说它是一个导航项,所以可能是这样。
我试图改变文本使用代码,如:
declare navigation bar as navagationbar here
button stuff {
navigationbar.text = "title"
}
这显然不是我的代码,只是展示它是如何工作的。
所以每当我按下按钮,我希望标题改变。
我有一个标题导航栏。 当我双击文本重命名它时,它实际上说它是一个导航项,所以可能是这样。
我试图改变文本使用代码,如:
declare navigation bar as navagationbar here
button stuff {
navigationbar.text = "title"
}
这显然不是我的代码,只是展示它是如何工作的。
所以每当我按下按钮,我希望标题改变。
当前回答
斯威夫特3
我为故事板中的导航栏(来自对象浏览器)所附带的导航标题栏项创建了一个出口。然后我起诉了下面这句话:
navigationBarTitleItem.title = "Hello Bar"
其他回答
你可以通过改变显示的视图控制器的标题来改变标题:
viewController.title = "some title"
通常这是在视图控制器的viewdidload中完成的:
override func viewDidLoad() {
super.viewDidLoad()
self.title = "some title"
}
然而,这只有当你的视图控制器嵌入在UINavigationController中才有效。我强烈建议这样做,而不是自己创建一个导航栏。如果你坚持自己创建导航栏,你可以通过以下方式更改标题:
navigationBar.topItem.title = "some title"
在viewDidLoad中尝试以下操作
self.navigationItem.title = "Your Title"
同时,如果你想手动创建导航栏,这段代码将帮助你
func setNavBarToTheView() {
let navBar: UINavigationBar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: 64.0))
self.view.addSubview(navBar);
let navItem = UINavigationItem(title: "Camera");
let doneItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.cancel, target: self, action: #selector(CameraViewController.onClickBack));
navItem.leftBarButtonItem = doneItem;
navBar.setItems([navItem], animated: true);
}
如果你有一个NavigationController嵌入在一个TabBarController里面,见下面:
super.tabBarController?.title = "foobar"
您可以使用调试器脚本调试此类问题。尝试Chisel的pvc命令打印层次结构上的每个可见/隐藏视图。
下面的代码适用于我的Xcode 7:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = "Your Title"
}