Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用IONIC 5更改Android中的状态栏颜色_Android_Ionic Framework_Colors_Statusbar_Ionic5 - Fatal编程技术网

无法使用IONIC 5更改Android中的状态栏颜色

无法使用IONIC 5更改Android中的状态栏颜色,android,ionic-framework,colors,statusbar,ionic5,Android,Ionic Framework,Colors,Statusbar,Ionic5,我的应用程序位于IONIC 5中,我正在使用以下代码更改app.component.ts文件中的状态栏颜色 import { StatusBar } from '@ionic-native/status-bar/ngx'; export class AppComponent { constructor( ... private statusBar: StatusBar ... ) { this.initializeApp(); } initi

我的应用程序位于IONIC 5中,我正在使用以下代码更改
app.component.ts文件
中的状态栏颜色

import { StatusBar } from '@ionic-native/status-bar/ngx';

export class AppComponent {

  constructor(
    ...
    private statusBar: StatusBar
    ...
  ) {
    this.initializeApp();
  }

  initializeApp() {
      ...
      this.statusBar.styleDefault();
      this.statusBar.backgroundColorByHexString('#ffffff');
      ...
  }
}
似乎IOS正在自动更改与工具栏匹配的状态栏颜色,即使我在代码中没有更改,但对于Android,状态栏颜色始终为黑色且没有更改。

这对我来说很有效

我没有使用:

this.statusBar.styleDefault();
只有app.component.ts文件中的下一个代码:

export class AppComponent implements OnInit{
ngOnInit() {
    this.statusBar.backgroundColorByHexString('#ffffff');
  }
}
这对我有用

我没有使用:

this.statusBar.styleDefault();
只有app.component.ts文件中的下一个代码:

export class AppComponent implements OnInit{
ngOnInit() {
    this.statusBar.backgroundColorByHexString('#ffffff');
  }
}

假设你在爱奥尼亚本地项目的电容器中。您有两个选择:

作品一。为使用cordova软件包运行npm安装:
npm安装cordova插件状态栏
,然后运行
ionic build--prod
npx cap sync安卓
。有关过时的cordova/电容器说明

这里有一个示例,statusbar使用OnInit和platform ready,您可以选择

import { Component, OnInit } from '@angular/core';

import { Platform } from '@ionic/angular';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';

@Component({
  selector: 'app-root',
  templateUrl: 'app.component.html',
  styleUrls: ['app.component.scss']
})
export class AppComponent  implements OnInit {
  constructor(
    private platform: Platform,
    private splashScreen: SplashScreen,
    private statusBar: StatusBar
  ) {
    this.initializeApp();
  }

  ngOnInit() {
   // Dont mix, choose OnInit or platform ready
   //this.statusBar.backgroundColorByHexString('#ffffff');
  }

  initializeApp() {
    this.platform.ready().then(() => {  
      this.statusBar.overlaysWebView(false);
      this.statusBar.backgroundColorByName("yellow");
      this.splashScreen.hide();
    });
  }
}
作品2。没有cordova作为电容器的电容器已经为您提供了StatusBar对象 :


假设你在爱奥尼亚本地项目的电容器中。您有两个选择:

作品一。为使用cordova软件包运行npm安装:
npm安装cordova插件状态栏
,然后运行
ionic build--prod
npx cap sync安卓
。有关过时的cordova/电容器说明

这里有一个示例,statusbar使用OnInit和platform ready,您可以选择

import { Component, OnInit } from '@angular/core';

import { Platform } from '@ionic/angular';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';

@Component({
  selector: 'app-root',
  templateUrl: 'app.component.html',
  styleUrls: ['app.component.scss']
})
export class AppComponent  implements OnInit {
  constructor(
    private platform: Platform,
    private splashScreen: SplashScreen,
    private statusBar: StatusBar
  ) {
    this.initializeApp();
  }

  ngOnInit() {
   // Dont mix, choose OnInit or platform ready
   //this.statusBar.backgroundColorByHexString('#ffffff');
  }

  initializeApp() {
    this.platform.ready().then(() => {  
      this.statusBar.overlaysWebView(false);
      this.statusBar.backgroundColorByName("yellow");
      this.splashScreen.hide();
    });
  }
}
作品2。没有cordova作为电容器的电容器已经为您提供了StatusBar对象 :


请共享您的包。json请共享您的包。json