隐藏状态栏不工作 ios

Hide status bar not Working ios

我读了太多关于这个主题的问题!但是,none 这对我有帮助,所以我再次问这个问题! 我到目前为止所做的尝试,

--> 我使用以下方法对我不起作用

-(BOOL)prefersStatusBarHidden{
return YES;
}

--> 也试过这个

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[application setStatusBarHidden:YES];

return YES;
}

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

我想隐藏特定 ViewController 的状态栏,而不是全部。 在 AppDelegate 中,我根据应用程序的要求将 NavigationController 添加到我的 firstViewController 和 firstViewController 作为 rootViewController 。

我希望有人能帮助我。对不起我的英语,如果有任何疑问要理解问题,请在下面评论

将以下内容添加到您的 Info.plist:

<key>UIStatusBarHidden</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>

& 也试试这个

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];

将此方法添加到您的 viewController

- (BOOL)prefersStatusBarHidden
{
return YES;
}

也许这会对你有所帮助。

plist 设置 "View controller-based status bar appearance" 仅控制是否应在 iOS 7.

上应用基于每个控制器的设置

如果您将此 plist 选项设置为 NO,则必须手动启用和禁用状态栏,如(直到 iOS 6):

[[UIApplication sharedApplication] setStatusBarHidden:YES];

如果你将这个 plist 选项设置为 YES,你可以将这个方法添加到你的每个 viewControllers 来为每个控制器独立设置 statusBar(尤其是如果你有一个 viewControllers 的智能子类系统)

- (BOOL)prefersStatusBarHidden {
    return YES;
}

我找到了解决办法,所以我在这里回答是为了帮助其他有同样问题的人

正如我所说,我在我的第一个 viewcontroller 中添加了导航控制器,这就是问题所在!

我通过设置 childViewControllerForStatusBarHidden 属性 of viewcontroller 解决了这个问题!我在prefersStatusBarHidden的apple Documents上找到了它,Here.

感谢大家对这个问题的关注和帮助!