我可以让状态栏隐藏,但应用程序仍然尊重栏的高度(见下图)。我还需要确保它不是一个闪烁的'状态栏隐藏在初始加载状态,因为它按下导航菜单按钮,然后跳回到隐藏状态。
我尝试过的方法:
在我的主控制器中添加了以下内容。这个在初始加载时闪烁布局。
// hide the status bar
ionic.Platform.fullScreen();
在info.plist
中设置键,值对<key>UIStatusBarHidden</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
等同于:
Status bar is initially hidden = YES
View controller-based status bar appearance = NO
尝试使用StatusBar plugin加载:
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
// Hide the status bar
if(window.StatusBar) {
StatusBar.hide();
}
});
})
尝试在我的MainViewController.m中设置以下内容
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
并添加新方法
- (BOOL)prefersStatusBarHidden {
return YES;
}
我已尝试过github上的3种不同的cordova插件。
我也是一名网络开发人员,因此在提供涉及更改obj-c的答案时,请像我一样解释:*
http://forum.ionicframework.com/t/how-to-hide-uistatusbar/4025
谢谢!
答案 0 :(得分:1)
我在你的帖子上留下了评论,但这是我提出的解决方案。
您可以做的是安装启动画面插入
$ cordova plugin add org.apache.cordova.splashscreen
然后在.run函数中执行此操作
.run(function ($ionicPlatform, $timeout) {
$ionicPlatform.ready(function () {
// Hide the status bar
if (window.StatusBar) {
StatusBar.hide();
$timeout(function () {
window.navigator.splashscreen.hide();
}, 2500);
}
});
})
答案 1 :(得分:0)
尝试在视图控制器中实现prefersStatusBarHidden。例如
- (BOOL)prefersStatusBarHidden
{
return YES;
}
答案 2 :(得分:0)
对于每个视图中的ios 7写入方法:
- (BOOL)prefersStatusBarHidden
{
return YES;
}
对于ios 6,在homeview或appdelegate中写下一次
[UIApplication sharedApplication].statusBarHidden = YES;
答案 3 :(得分:0)
在'CDVViewController.m'
中,转到
- (void)viewDidLoad
并插入以下
[[UIApplication sharedApplication] setStatusBarHidden:YES];
我的CDVViewController.m看起来像这样,
- (void)viewDidLoad
{
[super viewDidLoad];
NSURL* appURL = nil;
NSString* loadErr = nil;
[[UIApplication sharedApplication] setStatusBarHidden:YES];
.....