HarmonyOS鸿蒙Next中切换深色模式,已创建的服务卡片未更改颜色资源配置

HarmonyOS鸿蒙Next中切换深色模式,已创建的服务卡片未更改颜色资源配置 如下图,我配置了两套颜色资源,一个是深色模式,一个是浅色模式

经测试,切换模式后新生成的服务卡片颜色配置正常

但是,已经生成的服务卡片却并不会更改颜色配置,用的仍然是之前的颜色配置。

调试发现,在切换模式后,会自动调用服务卡片的updateFormData,难道需要开发者自己在updateFormData编写更新资源配置代码嘛?还是说需要修改一些配置文件?(config.json中写了"colorMode": “auto”)

如果需要的话该如何通过ComponentProvider修改相应组件的background_element属性?因为我更新服务卡片是通过updateForm传入ComponentProvider实现的。


更多关于HarmonyOS鸿蒙Next中切换深色模式,已创建的服务卡片未更改颜色资源配置的实战教程也可以访问 https://www.itying.com/category-93-b0.html

9 回复

已解决,稍后出教程~

更多关于HarmonyOS鸿蒙Next中切换深色模式,已创建的服务卡片未更改颜色资源配置的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


[HarmonyOS]服务卡片适配深色模式(Java版)-华为开发者联盟 (huawei.com)

请问楼主是如何更新颜色模式的呢,麻烦多贴出些代码

就是配置两套颜色资源呀

系统会根据当前的模式调用dark或者light里面的颜色资源

问题已经反馈给研发,请耐心等待

好滴,对了,我是用Java开发的服务卡片,听别人说用js开发的好像已创建的服务卡片切换模式后会自动更新资源配置。

有消息了嘛?如何解决?

欢迎开发小伙伴们进来帮帮楼主

在HarmonyOS鸿蒙Next中,服务卡片的颜色资源通常需要在resources目录下的colors.json文件中定义深色和浅色模式的颜色值。如果已创建的服务卡片未跟随系统切换深色模式,可能是因为未在colors.json中配置对应的深色模式颜色值,或者未在服务卡片的布局文件中正确引用这些颜色资源。请检查并确保服务卡片的颜色资源已正确配置,并在布局文件中使用$color引用这些资源。

回到顶部