我有一个标题导航栏。 当我双击文本重命名它时,它实际上说它是一个导航项,所以可能是这样。
我试图改变文本使用代码,如:
declare navigation bar as navagationbar here
button stuff {
navigationbar.text = "title"
}
这显然不是我的代码,只是展示它是如何工作的。
所以每当我按下按钮,我希望标题改变。
我有一个标题导航栏。 当我双击文本重命名它时,它实际上说它是一个导航项,所以可能是这样。
我试图改变文本使用代码,如:
declare navigation bar as navagationbar here
button stuff {
navigationbar.text = "title"
}
这显然不是我的代码,只是展示它是如何工作的。
所以每当我按下按钮,我希望标题改变。
当前回答
我发现这个方法很有效:
navigationItem.title = "Title"
其他回答
通常,最好的做法是在UIViewController上设置标题。通过这样做,UINavigationItem也被设置了。通常,这比以编程方式分配和初始化一个没有链接到任何东西的UINavigationBar要好。
你错过了UINavigationBar设计的一些好处和功能。这里有一个文档链接,可能会对您有所帮助。它讨论了你可以在实际栏和UINavigationItem上设置的不同属性。
只要记住:
你失去了返回按钮的功能(除非你自己连接) 内置的“从左侧拖动向后滑动”手势被取消
UINavigationController是你的朋友。
如果你还没有在你的storyboard视图控制器中创建导航栏,这是可行的。
override func viewDidLoad() {
super.viewDidLoad()
self.title = "Title"
}
如果你已经在你的storyboard视图控制器中创建了导航栏,这将会很有帮助。
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.title = "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);
}
我发现这个方法很有效:
navigationItem.title = "Title"
下面的代码适用于我的Xcode 7:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = "Your Title"
}