当我更新我的项目离子版本时,Android应用程序的状态栏在进入应用程序时无法显示任何图标:
进入app时:
谁知道怎么解决?我的信息:
cli packages: (/usr/local/lib/node_modules)
@ionic/cli-utils : 1.17.0
ionic (Ionic CLI) : 3.17.0
全球套餐:
cordova (Cordova CLI) : 7.1.0
本地包裹:
@ionic/app-scripts : 3.0.1
Cordova Platforms : android 6.3.0 ios 4.6.0-nightly.2017.11.22.24bfb734
Ionic Framework : ionic-angular 3.8.0
系统:
ios-deploy : 1.9.2
ios-sim : 5.0.13
Node : v7.10.0
npm : 5.5.1
OS : macOS Sierra
Xcode : Xcode 9.0.1 Build version 9A1004
环境变量:
ANDROID_HOME : not set
其他:
backend : legacy
import { StatusBar } from '@ionic-native/status-bar/ngx';
import { Platform } from 'ionic-angular';
@Component({
templateUrl: 'app.html'
})
export class MyApp {
constructor(public platform: Platform, public statusBar: StatusBar) {
platform.ready().then(() => {
statusBar.styleDefault();
if (platform.is('android')) {
statusBar.overlaysWebView(false);
statusBar.backgroundColorByHexString('#000000');
}
});
}
}
这解决了我的问题。
我已经解决了
statusBar.styleBlackOpaque();
代替
statusBar.styleDefault();
我觉得这很有帮助。您可以在离子3中使用这三个选项之一
import { StatusBar } from '@ionic-native/status-bar';
import { Platform } from 'ionic-angular';
@Component({
templateUrl: 'app.html'
})
export class MyApp {
constructor(public platform: Platform, public statusBar: StatusBar) {
this.platform.ready().then(() => {
// for Black
if(this.platform.is('android')) {
this.statusBar.styleBlackOpaque();
}
}
}
}
您也可以使用一个十六进制代码颜色
this.statusBar.backgroundColorByHexString('#fff');
这是一个内置的浅色主题。
this.statusBar.styleLightContent();
在你的app.component.ts中检查你有
import { Component } from '@angular/core';
import { Platform } from 'ionic-angular';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
...
@Component({
templateUrl: 'app.html'
})
export class MyApp {
constructor(platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen) {
platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
statusBar.styleDefault();
splashScreen.hide();
});
}
为了安全起见,请运行以下命令。
$ ionic cordova plugin add cordova-plugin-statusbar
$ npm install --save @ionic-native/status-bar
当一切都完成了。使用您最喜欢的命令生成您的Apk,或者您也可以尝试
$ ionic cordova run android --device
在statusBar.styleDefault()
将statusBar.styleLightContent()
改为app.component.ts
。