更改UINavigationBar外观backgroundimage时状态栏颜色已更改

时间:2012-12-05 11:24:10

标签: ios5 uinavigationcontroller ios6 appearance tintcolor

我使用这行代码来更改导航栏背景:

    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"image.png"] forBarMetrics:UIBarMetricsDefault];
在iOS6中,它可以正常工作,但在iOS5中,状态栏的背景也会改变,如下图所示: enter image description here

这是怎么发生的。提前谢谢。

还有一件事,我只是想改变UINavigationBar的颜色,所以我使用了这段代码:

[[UINavigationBar appearance] setTintColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"image.png"]]];

它在iOS6中运行良好,但在iOS5中没有。是什么原因?

1 个答案:

答案 0 :(得分:6)

您可以使用此设置状态栏

 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:YES];

因此状态栏颜色为黑色,字体颜色为白色..