iOS6中设置status bar的颜色

在iOS6中,statusbar的颜色是由当前页面的UINavigationBar决定的,也就是当前view中的UINavigationBar决定statusbar的tintColor的。如果我们的UIViewController是UINavigationController的子集,那么就好statusbar的颜色还好设置,如果UINavigationBar被hide掉,或是根本就没有UINavigationController,那么在iOS6上statusbar的颜色就是黑色。


如何办呢?我们如何才能在iOS6上设置statusbar的颜色?

刚才说了,statusbar的颜色是由UINavigationBar决定的,那么我们可不可以在当前view中放一个UINavigationBar并设置其颜色,影响其statusbar的颜色。 我们的假设是正确的,这个方法的确可行。


在我们的view中放入一个UINavigationBar,并设置其frame=CGRectMake(0, -43, 320, 44);   在这儿y的值一定得是-43(UINavigationBar有一个像素的值),不然一样达不到效果。

这样就其实了想要的结果















你可能感兴趣的:(iOS6中设置status bar的颜色)