在iOS7之后,status bar是透明的(transparent),navigation bars,tab bars,toolbars,search bars 和 scope bars 是半透明的(tranlucent)。
在设置这些Bar的背景颜色或者背景图片后,就需要使用下面的方法对StatusBar进行拓展,当然不扩展的后果就是颜色不匹配
添加方法如下,注意返回值的不同
- (UIBarPosition)positionForBar:(id<UIBarPositioning>)bar{
return UIBarPositionTopAttached;//使状态栏与搜索栏颜色一致
}
- UIBarPositionTopAttached 表示一个bar位于屏幕的顶部并且他的背景扩展到导航栏的区域;
- UIBarPositionTop 表示一个bar位于its local context的顶部,例如,位于一个popover的顶部,并且不为状态栏提供背景。