HarmonyOS 鸿蒙Next关于深色模式获取 检测以及设置深色和浅色方案的配色 har在三层架构作为commons共享使用

HarmonyOS 鸿蒙Next关于深色模式获取 检测以及设置深色和浅色方案的配色 har在三层架构作为commons共享使用

1.手机-设置-屏幕-深色模式,打开这个模式屏幕会变得可以在黑暗条件下使用。

2.获取当前的手机颜色模式,在启动页或entryability中,通过this.context.config.colorMode!获得当前的颜色模式。

3.使用appstorage获得并保存颜色模式的值。

4.使用onConfigurationUpdate这个方法里写颜色改变时的逻辑,如:

  1)当当前的颜色模式为light时,设置系统状态栏文字颜色为黑色

  2)当当前的颜色模式与appstorage保存的颜色模式不同时,更新该值

5.系统有关深色模式切换可通过配置颜色文件color.json进行颜色的统一配置

  1)base模块中在element下新建color.json文件,通过对象-键值对的方式配置颜色

  2)base同级目录,新建dark文件夹,与base类似,在element下将color.json复制,保证在名字相同的情况下值是符合深色模式使用的。

6.测试效果,如果统一配色不满足需求可手动添加条件渲染或三元表达式。


更多关于HarmonyOS 鸿蒙Next关于深色模式获取 检测以及设置深色和浅色方案的配色 har在三层架构作为commons共享使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next关于深色模式获取 检测以及设置深色和浅色方案的配色 har在三层架构作为commons共享使用的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对HarmonyOS鸿蒙Next关于深色模式的获取、检测以及设置深色和浅色方案的配色,并在三层架构中作为commons共享使用的问题,以下给出专业解答:

深色模式的获取与检测

在HarmonyOS中,应用可以通过监听系统配置变化来获取和检测深色模式。具体实现方式包括:

  • AbilityStageonCreate()生命周期中获取APP当前的颜色模式。
  • onConfigurationUpdate()生命周期中获取最新变更的颜色模式。
  • 使用@StorageProp@Watch注解在Page中监听设备深色模式变化。

深色和浅色方案的配色

  • 可在resources目录下创建深色模式限定词目录(命名为dark)并新建color.json文件,定义深色模式下的颜色资源。
  • 使用系统预置资源,通过分层参数实现深浅色模式下的自动切换。

在三层架构中共享

  • 在HarmonyOS的三层架构中,可将配色方案放在commons层,作为共享资源被不同模块引用。
  • 通过模块化开发,将深浅色模式的配色方案以组件化的方式提供给应用的其他部分使用。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部