我想在我的应用程序顶部创建一个导航栏 . 我创建了一个导航控制器 - >标签栏控制器 - >导航控制器 - >表控制器
-
我在右上方拖动了一个条形按钮项 .
-
我双击表控制器中间的 Headers 并写了一个文本 .
-
我也在我的控制器的viewDidLoad()中使用此代码尝试了它:
self.navigationController.navigationBar.topItem.title = "some title"
self.navigationItem.setRightBarButtonItem(UIBarButtonItem(barButtonSystemItem: .Search, target: self, action: "barButtonItemClicked:"), animated: true)
self.navigationItem.title = "YourTitle"
它不起作用 - 我做错了什么? :/
4 回答
你可以尝试这样的事情:
我相信你正在寻找
titleView
.尝试:
我很确定你可以在viewDidLoad中设置表控制器的 Headers ,这是导航栏中显示的 Headers .
这个答案解释了一个略有不同的问题,但概念是相同的:
https://stackoverflow.com/a/25167491/2070902
如果你想根据自己的意愿设置你的 "UINavigationBar" 请非常安全地使用它,它在快速的语言中如此简单,希望它能帮到你很多 .
STEP 1:-
在swift中创建一个类别类,继续 "New file" 并添加 "Simple swift class " ,并将其命名为 "MyCustomNavBarCategory.swift"
STEP 2:-
只是 "Clean the class (remove all code from this class)" 和 "Paste my give code below" : -
//class will Start from below line 从这里开始复制
让SCREEN_HEIGHT = UIScreen.mainScreen() . bounds.size.height
导入UIKit
扩展UINavigationBar {
}
// class will end on above 在上面一行停止复制代码,然后将其移到 "MyCustomNavBarCategory.swift" . 这是它的享受;) .
STEP 3:- 现在,您可以在此类 "It's very powerful category of UINavigationBar if you will implement it carefuly" 中将任何帧设置为UINavigationBar的任何对象 .