iOS 8 Swift Xcode 6 – 设置顶部导航栏bg颜色和高度

我到处查看并测试了Stack上发布的所有代码片段,但是对我来说没有任何作用,因为我需要它才能工作.

我只是想设置:

>导航栏高度
> RGB中的导航栏bg颜色
>导航栏居中徽标

我正在使用iOS8,Xcode 6和Swift.

非常感谢您的回答!

这是我在ViewController.swift中的代码

// Set nav bar height

    navigationController?.navigationBar.frame.origin.y = -10

    // Set nav bar bg color

    var navBarColor = UIColor(red: 4 / 255,green: 47 / 255,blue: 66 / 255,alpha: 1)

    navigationController?.navigationBar.barTintColor = navBarColor

    // Set nav bar logo

    let navBarImageView = UIImageView(frame: CGRect(x: 0,y: 0,width: 30,height: 30))

    navBarImageView.contentMode = .ScaleAspectFit

    let navBarImage = UIImage(named: "navBarlogo.png")

    navBarImageView.image = navBarImage

    navigationItem.titleView = navBarImageView

解决方法

导航栏高度:

自定义导航控制器子类中……

这个的诀窍是不要改变导航栏的实际高度,而是调整其原点.

func viewDidLoad() {
    super.viewDidLoad()

    navigationBar.frame.origin.y = -10 
}

RGB中的导航栏bg颜色:

自定义导航控制器子类中……

func viewDidLoad() {
    super.viewDidLoad()

    navigationBar.barTintColor = // YOUR COLOR
}

或使用外观代理

UINavigationBar.appearance().barTintColor = // YOUR COLOR

导航栏居中徽标

自定义视图控制器中……

func viewDidLoad() {
    super.viewDidLoad()

    navigationItem.titleView = UIImageView(image: // YOUR logo)
}

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...