如何更改iOS7 phonegap / cordova应用中状态栏的webview后面的背景颜色?

时间:2013-10-03 10:37:47

标签: cordova ios7 statusbar

我确信你们都知道,Apple已经改变了状态栏在iOS7中的工作方式,这导致了各种令人头疼的cordova / phonegap应用程序。

如果设备使用以下代码运行iOS7,我已设法将视图向下推20px:

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
    [application setStatusBarStyle:UIStatusBarStyleLightContent];
    // handling statusBar (iOS6) by leaving top 20px for statusbar.
    screenBounds.origin.y = 20;
    self.window = [[UIWindow alloc] initWithFrame:screenBounds];
}
else {
    self.window = [[UIWindow alloc] initWithFrame:screenBounds];
}

问题是,此代码创建的20px差距有如下黑色背景:

Black status bar with white text

如何更改代码创建的此空间的背景颜色?

在我的MainViewController.xib中,背景颜色设置为白色。这个黑色背景颜色属性来自哪里?

以下是我的MainViewController.xib的属性:

MainViewController.xib attributes

非常感谢

1 个答案:

答案 0 :(得分:0)

你实际上在使用Phonegap吗?

我认为您需要使用CSS在UIWebView的顶部添加边距而不是向下移动UIWebView。

试试这个:

function onDeviceReady() {
    if (parseFloat(window.device.version) === 7.0) {
      document.body.style.marginTop = "20px";
    }
}

document.addEventListener('deviceready', onDeviceReady, false);