更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 应用开发 > 该如何来修改HarmonyOS鸿蒙应用上部状态栏字体颜色

该如何来修改HarmonyOS鸿蒙应用上部状态栏字体颜色

更新时间:2021-11-27 10:51:02浏览次数:67+次

该如何来修改HarmonyOS鸿蒙应用上部状态栏字体颜色?如何在代码中修改该界面的状态栏字体、图标颜色为白色?有这方面的示例吗?

解答

请看下面“鸿蒙基础开发:更改自带的标题栏”一文,经过测试,完全可用。

1、前言

一般新创建的工程项目,都是自带标题栏(如下图),但是实际项目中标题栏需要自定义样式,所以需要隐藏掉系统自带的标题栏:

\

2、正文

更改系统标题栏的样式,在entry模块下的config.json文件添加配置(如下代码,无标题栏)。

1]、在module下配置是改变应用的样式。

2]、abilities下配置是改变对应的页面样式。

"metaData": {

     "customizeData": [

       {

         "name": "hwc-theme",

         "value": "androidhwext:style/Theme.Emui.Light.NoTitleBar"

       }

     ]

}

"name": "hwc-theme"(固定写法,不能更改)

"value": "androidhwext:style/Theme.Emui.Light"(白色样式:有标题栏,状态栏和导航栏:字体颜色黑色)

"value": "androidhwext:style/Theme.Emui.Light.NoTitleBar"(白色样式:无标题栏,状态栏和导航栏:字体颜色黑色)

"value": "androidhwext:style/Theme.Emui.Dark"(黑色样式:有标题栏,状态栏和导航栏:字体颜色白色)

"value": "androidhwext:style/Theme.Emui.Dark.NoActionBar"(黑色样式:无标题栏,状态栏和导航栏:字体颜色白色)

3、效果图 

1]、白色样式:有标题栏和无标题栏

\

2]、黑色样式:有标题栏和无标题栏?

\

4、设置状态栏和导航栏背景颜色

(沉浸式)一般我们都是自定义标题栏,想要标题栏颜色和状态颜色一致需要代码设置。

public class MainAbility extends Ability {

    @Override

    public void onStart(Intent intent) {

        super.onStart(intent);

        super.setMainRoute(MainAbilitySlice.class.getName());

        // 设置状态栏背景颜色

        getWindow().setStatusBarColor(Color.getIntColor("#4BC444"));

        // 设置导航栏背景颜色

        getWindow().setNavigationBarColor(Color.WHITE.getValue());

    }

}

5、设置状态栏颜色:未设置和已设置对比截图

\

相关参考:鸿蒙HarmonyOS状态栏、标题栏、导航栏相关操作的方法整理