HarmonyOS 如何动态修改状态栏颜色和字体颜色?

HarmonyOS 如何动态修改状态栏颜色和字体颜色?

HarmonyOS
3天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

​实现状态栏图标颜色动态修改,每个页面还是需要在每个页面设置颜色,如果动态的存取可以用堆栈集合等方式对颜色的值进行取值。 在需要改变的页面直接调用setWindowSystemBarProperties方法,参考文档:​https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-window-V5#setwindowsystembarproperties9

import { window } from '@kit.ArkUI'; 
 
@Entry 
@Component 
struct Index { 
  @State imgFit: ImageFit = ImageFit.Auto; 
 
  change(): void { 
    window.getLastWindow(getContext(), (err, data) => { 
      let win: window.Window; 
      if (err.code) { 
        console.error("error code :" + JSON.stringify(err.code)) 
        return; 
      } 
      try { 
        win = data; 
        //设置窗口为全屏模式 
        // win.setWindowLayoutFullScreen(true); 
        // 设置状态栏 
        win.setWindowSystemBarProperties({ 
          // 设置状态栏颜色为其他颜色 
          statusBarColor: '#ffc41212', 
          // 设置状态栏文本颜色为白色 
          statusBarContentColor: '#ff81f362' 
        }) 
        console.info('带状态栏沉浸式窗口设置完成') 
      } catch (expextion) { 
        console.error("error cause :" + JSON.stringify(expextion)) 
      } 
    }) 
  } 
 
  build() { 
    Row() { 
      Column({ space: 10 }) { 
        Button("change").onClick(() => { 
          this.change() 
        }) 
      } 
      .height('100%') 
    } 
    .width('100%') 
    .backgroundColor(Color.Black) 
  } 
}
分享
微博
QQ
微信
回复
3天前
相关问题
鸿蒙怎么 修改状态栏字体颜色
12277浏览 • 1回复 待解决
HarmonyOS 修改状态栏颜色不生效
206浏览 • 1回复 待解决
如何设置状态栏导航颜色
2814浏览 • 1回复 待解决
设置状态栏颜色不起作用怎么回事?
2370浏览 • 1回复 待解决
状态栏设置颜色失效该怎么办啊?
1864浏览 • 1回复 待解决
HarmonyOS 消息通知与状态颜色修改
304浏览 • 1回复 待解决
Tab组件的Tabbar中字体颜色如何修改
1157浏览 • 1回复 待解决
如何获取状态栏导航高度
2861浏览 • 1回复 待解决
鸿蒙如何获取导航状态栏高度
11287浏览 • 1回复 待解决
需要设置状态栏颜色
1486浏览 • 1回复 待解决
如何获取系统导航状态栏的高度
745浏览 • 1回复 待解决