如何使用Phonegap Build去除iOS状态栏?
使用Phonegap Build 3.1时可以摆脱iOS7中的状态栏吗? 在Xcode中本地构build时,我可以删除状态栏,但是一旦我尝试Phonegap Build,它就会返回。
- 有configuration偏好来完全删除状态栏?
- 如果没有,是否有可能覆盖应用程序视图顶部的状态栏,并将其设置为透明背景?
我不希望状态栏按下应用程序视图20px,这是现在的情况。
从Phonegap 3开始,您现在可以通过config.xml 自定义plist文件。
码:
<gap:config-file platform="ios" parent="UIViewControllerBasedStatusBarAppearance" overwrite="true"> <false/> </gap:config-file>
将此函数添加到MainViewController.m文件中:
//fix not hide status on ios7 - (BOOL)prefersStatusBarHidden { return YES; }
通常,你会编辑info.plist并添加这个键:
<key>UIViewControllerBasedStatusBarAppearance</key><false/>
但是,如果你不能在构build中做到这一点,你将不得不添加一个插件:
https://github.com/phonegap-build/StatusBarPlugin/blob/master/README.md
接着:
StatusBar.hide();
点击XCode根项目文件夹下的“projectname-Info.plist”文件,你将看到一个UI,你可以看到关键的vs值条目,你可以添加/删除键,添加一个新的键,只要find“状态栏初始隐藏“并设置”是“作为值。
我正在config.xml中使用以下内容,完全删除状态栏,在iOS 7.0.3&7.0.4,Phonegap版本3.0.0(如果有帮助的话)上testing。
<preference name="fullscreen" value="true" />
只需安装状态栏插件(我正在使用Cordova 5.x):
cordova plugin add cordova-plugin-statusbar@1.0.1
在你的代码中引用它的全局variables并使用.hide():
StatusBar.hide()
随着cordova,我不得不做2件事情。
-
当我用XCode构build时,我将Target-> Statusbar style设置为 – > HIDDEN,这会在启动屏幕上启动时隐藏状态栏。
-
你还必须在设备上用插件隐藏它。 否则,它会重新出现。 要做到这一点,安装插件:
cordova plugin add org.apache.cordova.statusbar
并在deviceready上调用它:
StatusBar.hide();
这对我工作:
<preference name="fullscreen" value="true" />
我正在使用Android。
我已经回答了您在上一个问题中完全 删除状态栏
关键部分:
我得到了这个在cordova3.6 + iOS 7.1美丽的工作。 而且考虑到iOS 7和8都有50%的市场份额,这个解决scheme应该足够了。
我正在使用的插件: org.apache.cordova.statusbar
而不是使用StatusBar.hide()
我用:
var hideSb = function(){ // StatusBar.hide; cordova.exec(null, null, 'StatusBar', 'hide', ['Ehi', 'You']); };
- Phonegap – 在Apple地图应用程序中打开导航指示
- 获取Facebook用户的电子邮件和用户名/ Phonegap FB插件IOS应用程序
- 我怎样才能从Cordova插件添加本地视图
- 内部导航被拒绝:iOS上的Cordova上的<allow-navigation not set>
- 更新到Xcode 5.1.1导致iOS应用程序的奇怪崩溃
- ITSAppUsesNonExemptEncryptioncordovabuild立
- 是否有可能在网上build立cordova应用程序?
- 用于企业分发的XCode构build和存档构build旧归档
- 以编程方式停止-webkit-overflow-scrolling