改变NavigationBar的背景颜色
去自定义NavigationBar的外观我们需要使用appearance
// 整个bar都是红色的了UINavigationBar.appearance().barTintColor = UIColor.redColor()//barIem的颜色变成了白色原本默认蓝色UINavigationBar.appearance().tintColor = UIColor.whiteColor()//半透明UINavigationBar.appearance().translucent = true//UIbarStyleUINavigationBar.appearance().barStyle = UIBarStyle.Default
改变NavigationBar Title的字体
if let barFont = UIFont(name: "AvenirNextCondensed-DemiBold", size: 22.0) {UINavigationBar.appearance().titleTextAttributes =[NSForegroundColorAttributeName:UIColor.whiteColor(), NSFontAttributeName:barFont]}
改变返回按钮的文字
// 如果你想改变某个控制器的返回按钮样式override func viewDidLoad() {super.viewDidLoad()// 返回按钮没有了文字,你可以去title里设定你自己需要的self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .Plain,target: nil, action: nil)}
使用图片作为导航栏标题
self.navigationItem.titleView = UIView("...")
添加多个栏按钮项目
希望添加导航栏的一侧不止一个栏按钮项目,无论是leftBarButtonItems和rightBarButtonItems 您在导航栏左侧/右侧指定自定义栏按钮项目。
let shareItem = UIBarButtonItem(image: UIImage(contentsOfFile: "iamge"), style: .Plain, target: self, action: "shareIem:")let cameraItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Camera, target: self, action: "cameraItem:")self.navigationItem.rightBarButtonItems = [shareItem,cameraItem]
最后说一下使用pushViewController切换到下一个视图时,navigation controller按照以下3条顺序更改导航栏的左侧按钮(本段摘自网络):
1、如果B视图有一个自定义的左侧按钮(leftBarButtonItem),则会显示这个自定义按钮;
2、如果B没有自定义按钮,但是A视图的backBarButtonItem属性有自定义项,则显示这个自定义项;
3、如果前2条都没有,则默认显示一个后退按钮,后退按钮的标题是A视图的标题;
如果觉得《自定义导航栏的背景 标题 返回按钮文字颜色[转]》对你有帮助,请点赞、收藏,并留下你的观点哦!