iOS7 - 具有特定颜色的状态栏



是否可以将状态栏文本和电池图标更改为特定颜色,例如红色?

读过一些关于这个的文章,建议我使用setStatusBarStyle。但是我没有设置为特定颜色的选项。

那么,有可能做到这一点吗?提前致谢


编辑:

试图在苹果开发论坛上找到答案,但不幸的是我找不到它。iOS7中UIStatusBar的可用颜色是黑色和白色。

也许你可以试试下面Sulthan的帖子,但似乎并不容易,至少对我来说是这样。似乎需要很多努力来换简单的颜色。所以我认为这是不可能的,至少以简单的方式。

无论如何,感谢您帮助我:)

警告 - 一般来说,App Store 评论者不会很好地接受更改颜色。

  1. 您可以隐藏默认状态栏并添加自己的状态栏。这将需要显示时间、电池信息、网络状态等。这不是一个不可能的解决方案,也不难实现,但它需要时间,而且看起来不会完全像所有设备上的本机状态栏。

  2. 您可以在白色状态栏上显示部分透明的视图,并通过这种方式更改颜色。但是,它也会改变状态栏背景的颜色。

  3. 您可以使用未记录的 API。状态栏是一个系统窗口(不是由[UIApplication windows]返回的),但有一些方法可以访问它(例如,请参阅窗口注册表以获取对所有应用程序窗口的访问权限)。然后,您可以使用反射(obj.c 运行时)检查状态栏上可用的方法并尝试更改颜色(请参阅 UIStatusBar 和 UIStatusBarWindow) 也可以将本机状态栏绘制到图像中,将白色像素替换为彩色像素,然后在原始状态栏上绘制生成的图像。

最新更新