如何解决如何在鸿蒙系统中使用资源 ID 加载颜色资源?
我正在构建一个 HarmonyOS 应用程序,并且想要加载我放置在 resources/base/element/color.json
的资源文件夹中的颜色值。如何在我的 Java 类中加载这种颜色?
在 Android 中,我们可以为此使用 getColor()
函数:
context.getResources().getColor(R.color.colorID);
HarmonyOS 中有什么替代方案?
解决方法
可以参考以下实现:
- color.json
{
"color": [
{
"name": "primary","value": "#FF0000"
}
]
}
- MainAbilitySlice
public void onStart(Intent intent) {
super.onStart(intent);
super.setUIContent(ResourceTable.Layout_ability_main);
ResourceManager resManager = this.getResourceManager();
try {
int color = resManager.getElement(ResourceTable.Color_primary).getColor();
Text text = (Text) findComponentById(ResourceTable.Id_text_helloworld);
text.setTextColor(new Color(color));
} catch (IOException e) {
} catch (NotExistException e) {
} catch (WrongTypeException e) {
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。