我已经尝试了这里建议的一切:状态栏不会消失无济于事.
我的应用程序的iPhone版本没有显示状态栏,但在我的iPad 上运行我的iPhone版本的扩展版本,有一个状态栏不会消失!
如果它有所不同,我的应用程序使用设备相机的大部分应用程序.如果您需要更多信息/代码,请不要犹豫!我的应用程序仅限iOS 7,我使用Xcode 5.此外,我希望状态栏在整个应用程序中消失.
不要在plist中建议UIViewControllerBasedStatusBar--它不起作用.
相关文章
我正在使用SpriteKit为iOS编写游戏.我想游戏是全屏,没有状态栏等.如何隐藏状态栏?
我需要在iOS7上隐藏状态栏.我已经尝试过设置:
Status bar is initially hidden
Run Code Online (Sandbox Code Playgroud)
和
View controller-based status bar appearance
Run Code Online (Sandbox Code Playgroud)
进入plist文件.当应用程序处于启动状态时,状态栏不会出现,但是当我更改视图控制器(是选项卡式应用程序)时,状态栏会出现!
我已经尝试过设置
- (BOOL)prefersStatusBarHidden
{
return YES;
}
Run Code Online (Sandbox Code Playgroud)
和
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
Run Code Online (Sandbox Code Playgroud)
在视图控制器中,但不起作用.有任何想法吗?
先感谢您 :)
UPDATE
我通过将"查看基于控制器的状态栏外观"设置为"YES"到info.plist并调用该方法来部分解决该问题
- (BOOL)prefersStatusBarHidden
{
return YES;
}
Run Code Online (Sandbox Code Playgroud)
进入视图控制器.但是现在我遇到了另一个问题:当我启动另一个控制器(UIImagePickerController)时会出现状态栏.我试着设置[myPicker prefersStatusBarHidden];但它似乎是只读的.谁知道解决方案?
PS:UIViewControllerBasedStatusBarAppearance = NO和UIViewControllerBasedStatusBarAppearance = NO是一样的..
我创建了一个UITabBarController的子类,以便在横向模式下隐藏tabBar和statusBar.我成功实现了隐藏/显示tabBar的代码,但是stausBar让我发疯了.我当前的实现工作100%但不是第一次轮换,我无法弄清楚原因.代码如下:
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
BOOL hide = (fromInterfaceOrientation == UIInterfaceOrientationPortrait ||
fromInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown);
[[UIApplication sharedApplication] setStatusBarHidden:hide withAnimation:UIStatusBarAnimationNone];
CGRect mainFrame = [[UIScreen mainScreen] applicationFrame];
[self.view setFrame:mainFrame];
}
Run Code Online (Sandbox Code Playgroud)
实际上我第一次旋转iPhone时,statusBar正确隐藏,但框架不正确(顶部有20px的间隙).如果我从这里返回到纵向视图,布局将按预期恢复,如果然后我在横向旋转第二次它将最终按预期工作(没有条形,像素完美布局!)......从这一点我可以旋转我的设备N次,视图将始终以正确的方式显示...所以,为什么我的代码第一次失败?!
您可能需要的额外信息:
我希望我的应用程序根本没有状态栏!我尝试过使用.plst
我已经尝试了这里的所有内容状态栏不会消失 ,也在这里 如何防止iOS 5显示状态栏,即使UIStatusBarHidden为YES?
有人可以进入极端细节来帮助我吗?如果有帮助,我正在使用XCode 5.我只是希望状态栏从应用程序中消失!谢谢!
我已尝试在我的应用.plist文件中设置以下内容:
View controller-based status bar appearance: NO
虽然这会从我的初始视图控制器中删除它,但是一旦我转到另一个视图并使用我的导航控制器返回,它就会回来,这次它不会消失.此外,我不明白为什么它会重要,但我还将模拟指标下的状态栏设置为"无",但这似乎没有帮助.我知道我将拥有导航栏,但状态栏我需要消失.

我怎么能这样做?请提供详细的答案,示例代码会很棒!
更新:这不是一个重复的解决方案,因为我尝试了所有其他解决方案,NONE似乎对我有用.最近我试过了
[[UIApplication sharedApplication]setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
Run Code Online (Sandbox Code Playgroud)
再一次,没有结果.当应用程序最初启动时,状态栏不存在,在用户访问另一个视图后,状态栏现在出现在2和其他视图中,并且不会消失.即使你回到主视图.