【问题标题】:statusBarStyle not changing?statusBarStyle 没有改变?
【发布时间】:2014-08-10 02:53:27
【问题描述】:

这个问题的要点很简单。我正在尝试在 application:didFinishLaunchingWithOptions: 中将 UIApplication 的 statusBarStyle 设置为 UIStatusBarStyleLightContent: (如下图所示),但由于某种原因,该值没有保持不变。

 NSLog(@"%ld",[[UIApplication sharedApplication]statusBarStyle]); //logs 0
 [[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
 NSLog(@"%ld",[[UIApplication sharedApplication]statusBarStyle]); //logs 0

我对这个问题的唯一猜测是它可能与我对 UIPageViewController 的使用有关,在这种情况下设置为根视图控制器。

[self.window setRootViewController:self.pageViewController];

【问题讨论】:

    标签: ios cocoa-touch uiview uiviewcontroller uikit


    【解决方案1】:

    尝试在 plist 中将 UIViewControllerBasedStatusBarAppearance 设置为 NO。

    然后在你的 viewController..

    -(void)viewDidLayoutSubviews
    {
        if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {
            [self setNeedsStatusBarAppearanceUpdate];
        }
    }
    

    【讨论】:

      【解决方案2】:

      尝试进入项目的 .plist 文件,并添加/设置密钥:

      “查看基于控制器的状态栏外观”为否。

      【讨论】:

      • 夏普。我没有意识到它默认为 YES。
      • 这个问题出现在Xcode 5/iOS 7,即使你想一直隐藏状态栏,现在只勾选“应用程序启动时隐藏”选项是不够的。
      猜你喜欢
      • 2020-10-04
      • 2018-03-17
      • 1970-01-01
      • 1970-01-01
      • 2014-04-03
      • 2019-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多