是否可以将状态栏文本和电池图标更改为特定颜色,例如红色?
我已经阅读了一些关于此的文章,建议我使用setStatusBarStyle。但我没有选择设置特定的颜色。
那么,有可能这样做吗?提前致谢
编辑:
我试图在apple dev论坛找到答案,但不幸的是我找不到它。 iOS7中UIStatusBar的可用颜色为黑色和白色。
也许你可以尝试下面的Sulthan的帖子,但似乎并不容易,至少对我而言。似乎只需要简单的换色就需要这么多的努力。所以我认为这是不可能的,至少在简单方面是这样。
无论如何,谢谢你帮助我:)。
答案 0 :(得分:6)
警告 - 一般情况下,App Store评论员无法很好地接收颜色。
您可以隐藏默认状态栏并添加自己的状态栏。这需要显示时间,电池信息,网络状态等。这不是一个不可能的解决方案,不难实现,但它需要时间,并且它看起来不像所有设备上的本机状态栏。
< / LI>您可以在白色状态栏上显示部分透明的视图,并以这种方式更改颜色。但是,它也会更改状态栏背景的颜色。
您可以使用未记录的API。状态栏是一个系统窗口(不是[UIApplication windows]
返回的),但有一些方法可以访问它(例如,参见Window Registry以获得对所有应用程序窗口的访问权限)。然后你可以使用反射(obj.c运行时)来检查状态栏上哪些方法可用并尝试更改颜色(参见UIStatusBar和UIStatusBarWindow)也可以绘制原生颜色将状态栏添加到图像中,用彩色像素替换白色像素,然后在原始状态栏上绘制生成的图像。