1、设置
EntryAbility下onWindowStageCreate中:
onWindowStageCreate(windowStage: window.WindowStage): void {
//1.获取应用主窗口。
let windowClass: window.Window | null = null;
windowStage.getMainWindow((err: BusinessError, data) => {
windowClass = data;
let sysBarProps: window.SystemBarProperties = {
statusBarColor: '#FF3300',
statusBarContentColor: '#FFFFFF'
};
// 2.设置窗口内导航栏、状态栏属性。systemBarProperties:导航栏、状态栏的属性集合
windowClass.setWindowSystemBarProperties(sysBarProps);
})
windowStage.loadContent('pages/Index', (err) => {
if (err.code) {
hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
return;
}
hilog.info(0x0000, 'testTag', 'Succeeded in loading the content.');
});
}
2、修改
在EntryAbility.ets中的onWindowStageCreate方法中将WindowStage设置一个AppStorage:
AppStorage.setOrCreate('windowStage',windowStage);
通过setWindowSystemBarProperties可以设置状态栏样式:
@Component
struct XxPage{
windowStage: window.WindowStage = AppStorage.get("windowStage") as window.WindowStage;
// 获取主窗口的方式
mainWin: window.Window = this.windowStage.getMainWindowSync();
aboutToAppear(){
let sysBarProps: window.SystemBarProperties = {
statusBarColor: '#ffffff',
statusBarContentColor: '#000000'
};
this.mainWin.setWindowSystemBarProperties(sysBarProps);
}
build() {}
}