iOS 8 - 设置状态栏颜色(当您的UINavigationBar具有nil背景图像时)

Wil*_*Hua 1 statusbar uinavigationbar uinavigationcontroller ios

我在我的应用程序中使用了一个视图寻呼机(特别是ICViewPager).要将View Pager混合到导航栏中,如下所示:

在此输入图像描述

我不得不把这些代码放在我的代码中 AppDelegate.m

[[UINavigationBar appearance] setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setShadowImage:[[UIImage alloc] init]];
Run Code Online (Sandbox Code Playgroud)

但是,这会导致状态栏与导航栏的颜色不同.

如何将状态栏的颜色设置为与导航栏相同?

mat*_*att 5

如何将状态栏的颜色设置为与导航栏相同?

你没有.状态栏没有颜色.它是透明的.您的工作是将一些具有所需颜色的视图延伸到状态栏后面的视图顶部,以便显示该颜色.

例如,此视图可以是您的窗口,也可以是视图控制器的主视图.现在,它是白色的,所以我们看到白色显示在导航栏顶部的上方.如果你给你的窗口(或主视图,或者我们看到的任何白色物体)与导航栏的颜色相同,你将获得你想要的效果.

或者,您可以调整导航栏本身的大小和位置,使其到达窗口顶部并覆盖它.