iOS 7如何将StatusBarStyle从DefaultContent设置为LightContent

时间:2013-10-16 02:18:54

标签: ios ios7 uiviewanimation uistatusbar

我正在尝试使用UIView动画将状态栏样式从 UIStatusBarStyleDefaultContent 转换为 UIStatusBarStyleLightContent ,但是,样式只是在没有淡入淡出动画的情况下切换。我认为使用以下方法设置样式会起作用:

[UIView animateWithDuration:1.0
                      delay:0.0
                    options:UIViewAnimationOptionCurveEaseInOut
                 animations:^{
                     [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
                     [self.view layoutIfNeeded];
                 } completion:nil];

我不知道如何得到我想要发生的事情。基本上,我的内容从黑暗变为浅,所以我需要更改状态栏颜色。默认情况下,它不能按我想要的方式工作。非常感谢任何帮助。

谢谢!

2 个答案:

答案 0 :(得分:6)

这就是它的完成方式。

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

以下是UIApplication Class Reference

希望这会对某人有所帮助。

答案 1 :(得分:1)

我怀疑你不能做你想做的事。

文档说调用setStatusBarStyle时的动画是幻灯片动画:

  

statusBarStyle状态栏的当前样式。

     

@property(nonatomic)UIStatusBarStyle statusBarStyle讨论   属性的值是UIStatusBarStyle常量,表示   地位的风格。默认样式是UIStatusBarStyleDefault。该   动画将状态栏滑出旧方向和幻灯片   它适用于新的方向。