我目前的应用程序是在手机差距3.4。我可以在InAppBrowser中控制状态栏背景颜色吗?通过状态栏插件的任何更改都会反映在本机页面上,但不会反映在网络上?
目前InAppBrowser在状态栏上显示其背景颜色。要么我需要更改web上的状态栏颜色,要么我希望InAppBrowser从页面顶部开始,而不留下20像素边距,这将给我一个iOS7应用程序外观状态栏默认为透明。
您可以根据cordova v 3.4自定义状态栏
例:
onDeviceReady: function () {
StatusBar.overlaysWebView(false);
StatusBar.hide();
App.phoneGapApp.receivedEvent('deviceready');
}
希望这有帮助。
要更改状态栏和导航栏的颜色,请访问文件CDVInAppBrowser.m
(位于${PROJECT_ROOT}/platforms/ios/${PROJECT_NAME}/Plugins/cordova-plugin-inappbrowser/CDVInAppBrowser.m
)
状态栏:
将greenColor
改为任何UIColor
- (void)createViews
{
self.webView.backgroundColor = [UIColor greenColor];
}
导航栏
将redColor
改为任何UIColor
- (void)createViews
{
self.view.backgroundColor = [UIColor redColor];
}
状态栏文本颜色
- (UIStatusBarStyle)preferredStatusBarStyle
{
// White
return UIStatusBarStyleLightContent;
// Or Black:
// return UIStatusBarStyleDefault;
}
更新2018年
您可以在这样的选项中传递所需的工具栏颜色(红色):
cordova.InAppBrowser.open(url, '_blank', 'toolbar=yes,toolbarcolor=#FF0000');