2016-07-26 139 views
0

我想让状态栏比导航栏的色调更暗吗?我怎么能实现这个在斯威夫特2.0在IOS 9 一个exmaple是作为附加:enter image description here更改状态栏背景

我能够将状态栏文本为白色,但不是背景到一个较暗的语气,然后导航栏?我需要添加一个单独的视图吗?如果是这样,因为我不能得到它在导航栏的顶部?

+1

这可以帮助你,http://stackoverflow.com/questions/26956728/changing-the-status-bar-color-for-specific-viewcontrollers-using-swift-in-ios8 – Santosh

+0

你不理解我的问题,我已经知道如何将状态栏文本更改为灯光,我需要更改背景颜色w这是不同的导航背景 –

+0

那么你试过的代码是什么? – Dershowitz123

回答

1

答:

let view = UIView(frame: CGRectMake(0, 0, 500, 20)) 
view.backgroundColor = UIColor.redColor() 
self.navigationController?.view.addSubview(view) 
+0

我发现解决方案感谢霍德森 –

0

你只需要添加一个新的UIView并将其设置为适当的颜色。要么给它一个框架或添加约束,以便它位于顶部。

它的高度应该是状态栏的高度(通常是20,我相信,但你可以得到这样的编程方式,以及只是柜面它改变了...或者不存在。)

UIApplication.sharedApplication().statusBarFrame.size.height 
+0

尝试,但我不能让它通过导航栏? –

+1

即使你设置这样的框架:'let view = UIView(frame:CGRectMake(0,0,500,20))'它仍然不会显示在导航栏上方?注意:如果宽度太大,500应该将其设置为实际的屏幕宽度,但为了快速,我只将其设置为大数目(大于屏幕宽度)。 – Hodson

+0

谢谢!但要添加,如果其他人有这个问题,运行这个: –