如何使用Phonegap Build删除iOS状态栏?

Per*_*son 25 statusbar ios cordova phonegap-build

使用Phonegap Build 3.1时是否可以摆脱iOS7中的状态栏?我可以在Xcode中本地构建时删除状态栏,但是一旦我尝试Phonegap Build,它就会再次返回.

  1. 是否有配置首选项完全删除状态栏?
  2. 如果没有,是否可以将状态栏覆盖在应用视图的顶部并将其设置为透明背景?

希望状态栏按下应用程序视图20px,这就是现在的情况.

Min*_*yre 16

从Phonegap 3开始,您现在可以通过config.xml 自定义plist文件.

码:

<gap:config-file platform="ios" parent="UIViewControllerBasedStatusBarAppearance" overwrite="true">
    <false/>
</gap:config-file>
Run Code Online (Sandbox Code Playgroud)

  • 这不适合我.我正在使用Phonegap 3.3.0 (2认同)
  • @John和其他人,请注意您可能还需要添加:`<gap:config-file platform ="ios"parent ="UIStatusBarHidden"overwrite ="true"> <true /> </ gap:config-file>这来自关于"全屏"偏好的PhoneGap文档:_注意:新版iOS可能不支持,但用户可以在phonegap构建中使用config-file元素,并将UIViewControllerBasedStatusBarAppearance设置为false,将UIStatusBarHidden设置为true._从PhoneGap 3.6.3起正常工作. (2认同)

MPa*_*ulo 14

通常,您可以编辑info.plist并添加以下密钥:

 <key>UIViewControllerBasedStatusBarAppearance</key><false/>
Run Code Online (Sandbox Code Playgroud)

但是,由于你无法在构建时执行此操作,因此您必须添加一个插件:

https://github.com/phonegap-build/StatusBarPlugin/blob/master/README.md

然后:

StatusBar.hide();


mya*_*aug 14

将此函数添加到MainViewController.m文件中:

//fix not hide status on ios7
- (BOOL)prefersStatusBarHidden
{
    return YES;
}
Run Code Online (Sandbox Code Playgroud)


小智 6

单击XCode根项目文件夹下的"projectname-Info.plist"文件,您将看到一个UI,您可以在其中看到键和值条目,您可以添加/删除键,添加新键只需查找"状态" bar最初隐藏"并设置为"YES"作为值.

  • 我发现你还需要将`基于控制器的状态栏外观`设置为`NO`. (5认同)

小智 4

我在 config.xml 中使用以下内容,它完全删除了状态栏,在 iOS 7.0.3 和 7.0.4、Phonegap 版本 3.0.0 上进行了测试(如果有帮助)。

    <preference name="fullscreen" value="true" />
Run Code Online (Sandbox Code Playgroud)