0

我相信你们都知道,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 间隙有一个黑色背景,如下所示:

带有白色文本的黑色状态栏

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

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

这是我的 MainViewController.xib 的属性:

MainViewController.xib 属性

非常感谢

4

1 回答 1

0

你真的在使用Phonegap吗?

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

尝试这个:

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

document.addEventListener('deviceready', onDeviceReady, false);
于 2013-10-03T10:49:47.730 回答