我可以在我的应用中隐藏状态栏:
- (void)viewDidLoad{
[[UIApplication sharedApplication] setStatusBarHidden:YES];
[super viewDidLoad];
}
当我选择我的发布图像并第一次启动时,它就是图片上的状态栏。我怎么能隐藏这个?
答案 0 :(得分:128)
您需要在AppDelegate文件中添加此代码,而不是在Root View Controller中添加
或者在plist文件中添加属性状态栏最初隐藏
人们,在 iOS 7 +
中请将此信息添加到您的info.plist文件中,它会有所不同:)
UIStatusBarHidden UIViewControllerBasedStatusBarAppearance
适用于iOS 11.4+和Xcode 9.4 +
在一个或所有视图控制器中使用此代码
覆盖var prefersStatusBarHidden:Bool { return true}
答案 1 :(得分:79)
将以下代码添加到视图控制器:
if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {
// iOS 7
[self performSelector:@selector(setNeedsStatusBarAppearanceUpdate)];
} else {
// iOS 6
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];
}
- (BOOL)prefersStatusBarHidden {
return YES;
}
答案 2 :(得分:64)
这对我有什么帮助(更改plist文件):
答案 3 :(得分:41)
将此代码放入您隐藏状态栏的视图控制器中:
- (BOOL)prefersStatusBarHidden {return YES;}
答案 4 :(得分:12)
在iOS 7中,状态栏外观默认取决于UIViewController
。要全局隐藏状态栏,请在info.plist
中使用NO
键的UIViewControllerBasedStatusBarAppearance
值,并使用UIApplication
的{{1}}方法setStatusBarHidden
{{1价值。
答案 5 :(得分:11)
在“info.plist”中的下拉列表中添加此密钥,瞧,您将不会再看到包含GSM,wifi图标等元素的顶栏。
答案 6 :(得分:1)
在info.plist
View controller-based status bar appearance NO
Status bar is initially hidden YES
在view controller.m
- (BOOL) prefersStatusBarHidden
{
return YES;
}
答案 7 :(得分:1)
我支持iOS 5,6和& 7.我的应用程序仅限iPad。我需要使用以下所有内容:
[[UIApplication sharedApplication] setStatusBarHidden:YES];
查看控制器:
- (BOOL)prefersStatusBarHidden{ return YES; }
的Info.plist
<key>UIStatusBarHidden</key>
<string>YES</string>
<key>UIStatusBarHidden~ipad</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<string>NO</string>
答案 8 :(得分:1)
它为我工作,
请将以下代码添加到info.plist文件中,
<key>UIStatusBarHidden</key>
<false/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
希望这对某些人有用。
答案 9 :(得分:0)
只需选中目标/摘要iPad部署信息框,您的状态栏就会消失。 它适用于我的应用程序。
答案 10 :(得分:0)
我有同样的问题,但它很容易解决!只需设置
status bar is initially hidden = YES
然后点击文字status bar is initially hidden
后面的加号右边添加一行,然后将文字设置为
view controller-based status bar appearance
点击箭头,然后将其设置为NO
希望这有帮助!
答案 11 :(得分:0)
我最简单的方法是在.m文件中输入以下内容。
- (BOOL) prefersStatusBarHidden
{
return YES;
}
这应该有效!
答案 12 :(得分:0)
-(void) viewWillAppear:(BOOL)animated
{
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];
}
答案 13 :(得分:0)
在视图控制器中的swift中的完整解决方案
// you can use your own logic to determine if you need to hide status bar
// I just put a var here for now
var hideStatusBar = false
override func preferStatusBarHidden() -> Bool {
return hideStatus
}
// in other method to manually toggle status bar
func updateUI() {
hideStatusBar = true
// call this method to update status bar
prefersStatusBarHidden()
}
答案 14 :(得分:0)
要以编程方式隐藏每个视图控制器的状态栏,请使用以下两个过程之一:
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
- (BOOL)更喜欢StatusBarHidden {
overflow: hidden
}
要隐藏整个应用程序的状态栏,我们应该按照以下步骤进行操作:
您应该将此值添加到plist:&#34;查看基于控制器的状态栏外观&#34;并将其设置为&#34; NO&#34;。