【问题标题】:Cannot change status bar text color on large screen iPhone无法更改大屏幕 iPhone 上的状态栏文本颜色
【发布时间】:2017-08-17 10:02:11
【问题描述】:

我正在使用 tabBarController 开发一个旧的 Object C 应用程序。因为用于将状态栏文本设置为白色的setStatusBarStyle 在 iOS 9 中已弃用,所以我将其删除并更改了 .plist 文件,如下所示:

我还将部署信息中的状态栏样式更改为“轻”。 它在 iPhone SE 和 5 上运行良好(在 iOS 9.3 和 11 上进行了检查),但由于某种原因不适用于 iPhone 6 或 7 等较大的设备。状态栏及其内容(时间、电池等)都是黑色的。 我按照建议尝试了preferredStatusBarStyle 和其他一些说明,但没有任何东西适合我。

【问题讨论】:

  • 你的项目部署目标是什么?
  • 如果你的部署目标是 > 9 然后使用 - (UIStatusBarStyle)preferredStatusBarStyle { return UIStatusBarStyleLightContent; } 在每个视图控制器类(.m 文件)中使用它。

标签: ios objective-c iphone statusbar


【解决方案1】:

你的答案在这里:

此代码使用每个 UIViewController

- (UIStatusBarStyle)preferredStatusBarStyle
{
    return UIStatusBarStyleLightContent;
}

【讨论】:

    【解决方案2】:

    试试这个代码:

    [[UIApplication sharedApplication] setStatusBarHidden:NO];
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
    

    使用- (void)viewDidLoad 要么 - (void)viewWillAppear:(BOOL)animated - (void)viewWillDisappear:(BOOL)animated

    【讨论】:

      猜你喜欢
      • 2020-06-08
      • 2013-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-11
      • 1970-01-01
      • 2019-06-14
      • 2019-10-27
      相关资源
      最近更新 更多