隐藏状态栏不工作ios

时间:2015-03-24 12:47:37

标签: ios iphone ipad uinavigationcontroller statusbar

我在这个主题上读了太多问题!但是,这些都没有帮助我,所以我再次提出这个问题! 我到现在为止做了什么,

- >我用下面的方法不适合我

-(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。

我希望有人可以帮助我。对不起我的英文,如果有任何疑问,请在下面发表评论

4 个答案:

答案 0 :(得分:2)

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

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

&安培;也试试这个

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

答案 1 :(得分:1)

将此方法添加到viewController

- (BOOL)prefersStatusBarHidden
{
return YES;
}

可能会对你有帮助。

答案 2 :(得分:1)

plist设置&#34;查看基于控制器的状态栏外观&#34;仅控制是否应在iOS 7上应用基于每个控制器的设置。

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

[[UIApplication sharedApplication] setStatusBarHidden:YES];

如果将此plist选项设置为YES,则可以将此方法添加到每个viewControllers中,以便为每个控制器独立设置statusBar(如果您有viewControllers的智能子类系统,则特别好。)

- (BOOL)prefersStatusBarHidden {
    return YES;
}

答案 3 :(得分:1)

我找到了解决方案,所以我在这里回答它是为了帮助那些有同样问题的人

正如我所说,我将navigationcontroller添加到我的firstviewcontroller,这就是问题!

我通过设置viewcontroller的 childViewControllerForStatusBarHidden 属性来解决它!我在苹果的文件中找到了prefersStatusBarHidden,Here.

感谢大家关注这个问题并试图帮助我!