gpt4 book ai didi

ios - setStatusBarHidden 已弃用,但唯一有效的方法

转载 作者:技术小花猫 更新时间:2023-10-29 10:37:01 29 4
gpt4 key购买 nike

我已经尝试了所有我能找到的解决方案,包括:setStatusBarHidden is deprecated in iOS 9.0但它们都不适用于我的应用程序。

这是一个简单的单 View 应用程序。有一个带有单个按钮的导航栏,状态栏应显示在其顶部。

在我的 .plist 中:

Status bar is initially hidden: NO

Status bar style: UIStatusBarStyleLightContent

View Controller based status bar appearance: NO

更改其中任何一项似乎都没有任何区别。我选中了状态栏样式“在应用程序启动期间隐藏”选项,因为我不希望它出现在初始屏幕上。

我有:

- (BOOL)prefersStatusBarHidden 
{
return NO;
}

-(UIStatusBarStyle)preferredStatusBarStyle
{
NSLog(@"style");
return UIStatusBarStyleLightContent;
}

setNeedsStatusBarAppearanceUpdate 当 View 加载到我的 ViewController 中时,它们肯定都会被调用。

View 是在 .storyboard 中建立的,但许多字段也在 ViewController.m 中进行操作。在模拟指标中分配给状态栏的值似乎也没有任何影响。

我需要我的状态栏在启动屏幕期间隐藏并在 viewController 上可见。请帮我找到一个不使用已弃用的 setStatusbarHidden 的解决方案!

编辑:

我还没有解决这个问题,我肯定不是唯一遇到这个问题的人!它发生在我编写的两个应用程序中。

最佳答案

我一直在尝试解决同样的问题,我不知道为什么 setStatusBarHidden 和 setStatusBarStyle 已被弃用,因为新方法一点也不直观。

要在启动时隐藏状态栏,我的 plist 中有这些设置:

View controller-based status bar appearance: YES
Status bar is initially hidden: YES

然后在我的 View Controller 中启动后显示状态栏:

- (BOOL)prefersStatusBarHidden {    
return NO;
}

-(UIStatusBarStyle)preferredStatusBarStyle {
return UIStatusBarStyleLightContent;
}

在我找到这个答案之前这仍然没有用 https://stackoverflow.com/a/19365160/488611 .所以在viewDidLoad中我也设置了导航栏样式:

self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;

这完全没有意义,但有效。

关于ios - setStatusBarHidden 已弃用,但唯一有效的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32067174/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com