设置状态栏,调用setWindowSystemBarProperties不生效

我使用 setWindowSystemBarProperties 设置状态栏,不生效。

windowStage.getMainWindow((err, data) => {
      if (err.code) {
        console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
        return;
      }
      windowClass = data;
      console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));

      let SystemBarProperties={
        statusBarColor: '#ff0000',
        statusBarContentColor:'#000000'
      };
      windowClass.setWindowSystemBarProperties(SystemBarProperties, (err) => {
        if (err) {
          console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
          return;
        }
        console.info('Succeeded in setting the system bar properties.');
      });
    })

后查阅文档发现api9无法使用,

设置状态栏,调用setWindowSystemBarProperties不生效-鸿蒙开发者社区

既然官方说不支持此接口,那怎样才能设置状态栏?


Ability框架
UI
2024-04-17 13:23:14
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
caseer

这是 developer preview1的写法,参考下 setWindowSystemBarProperties9+

setWindowSystemBarProperties(systemBarProperties: SystemBarProperties, callback: AsyncCallback<void>): void

设置窗口全屏模式时窗口内导航栏、状态栏的属性,使用callback异步回调。

系统能力: SystemCapability.WindowManager.WindowManager.Core

参数:

参数名

类型

必填

说明

SystemBarProperties

​SystemBarProperties​

导航栏、状态栏的属性。

callback

AsyncCallback<void>

回调函数。

错误码:

以下错误码的详细介绍请参见​​窗口错误码​​。

错误码ID

错误信息

1300002

This window state is abnormal.

1300003

This window manager service works abnormally.

示例:

 import { BusinessError } from '@ohos.base';
 let SystemBarProperties: window.SystemBarProperties = {
 statusBarColor: '#ff00ff',
 navigationBarColor: '#00ff00',
 //以下两个属性从API Version8开始支持
 statusBarContentColor: '#ffffff',
 navigationBarContentColor: '#00ffff'
 };
 try {
 windowClass.setWindowSystemBarProperties(SystemBarProperties, (err: BusinessError) => {
 const errCode: number = err.code;
 if (errCode) {
 console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
 return;
 }
 console.info('Succeeded in setting the system bar properties.');
 });
 } catch (exception) {
 console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(exception));
 }
分享
微博
QQ
微信
回复
2024-04-17 15:14:15
相关问题
HarmonyOS 修改状态栏颜色生效
172浏览 • 1回复 待解决
如何设置沉浸式状态栏
2436浏览 • 1回复 待解决
ets开发如何设置隐藏状态栏
3271浏览 • 1回复 待解决
如何设置状态栏和导航的颜色
2775浏览 • 1回复 待解决
元服务顶部状态栏怎么设置标题
1741浏览 • 3回复 待解决
沉侵式状态栏获取状态栏高度为0
282浏览 • 1回复 待解决
应用如何设置隐藏顶部的状态栏
2303浏览 • 1回复 待解决
获取状态栏与导航高度
506浏览 • 1回复 待解决
设置状态栏颜色不起作用怎么回事?
2319浏览 • 1回复 待解决
Js UI 如何设置状态栏背景是透明的?
3253浏览 • 1回复 待解决
状态栏设置颜色失效该怎么办啊?
1821浏览 • 1回复 待解决
如何实现沉浸式状态栏
438浏览 • 1回复 待解决
如何获取状态栏和导航高度
2829浏览 • 1回复 待解决