3

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

我已经阅读了一些关于此的文章,建议我使用 setStatusBarStyle。但我没有设置为特定颜色的选项。

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


编辑 :

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

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

无论如何,谢谢你帮助我:)

4

1 回答 1

6

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

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

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

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

于 2013-11-07T11:03:55.470 回答