ios - 设置不同颜色的导航栏和状态栏

标签 ios swift

我正在使用 Swift 制作一个应用,我希望状态栏和导航栏具有不同的颜色,例如 iOS 上的谷歌翻译应用或谷歌音乐应用。

我已经知道状态栏和导航栏的颜色不能单独设置,但是有什么技巧可以做到这一点吗?

最佳答案

一个简单的方法是在导航栏顶部添加一个与状态栏大小相同的 View 。

例如,要使状态栏变为红色,您可以将以下内容添加到您的 viewDidLoad 方法中:

let statusBarHeight = CGFloat(20)
let colorView = UIView(frame: CGRectMake(0, -statusBarHeight, self.view.bounds.width, statusBarHeight))
colorView.backgroundColor = UIColor.redColor()
self.navigationController?.navigationBar.addSubview(colorView)

关于ios - 设置不同颜色的导航栏和状态栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29238996/

相关文章:

ios - 在 iOS 中处理手机关机事件

ios - 崩溃 : com. apple.root.default-qos

swift - 快速类型转换后对数组中的对象执行变异函数

swift === 与零

swift - 逻辑 'OR' 条件不适用于类

ios - Alamofire 在后台下载/上传多个文件

ios - libc++ for mac os中的可能错误,当字符串obj超出范围时,不调用字符串析构函数

javascript - PhoneGap : Get orientation of captured video?

ios - Swift 类基本 D.R.Y 原则

ios - Protocol 只能作为泛型约束,因为它有 Self 或 associatedType 要求