在OpenHarmony以及HarmonyOS鸿蒙Next中如何访问系统资源
在OpenHarmony以及HarmonyOS鸿蒙Next中如何访问系统资源
访问系统资源
大家好,我是坚果,今天给大家分享一下在OpenHarmony以及HarmonyOS中如何访问系统资源,首先在这里。
这也是原子化服务实战中的一个彩蛋,发给大家。
原子化服务的更多内容,大家可以点开主页查看。
系统资源包含色彩、圆角、字体、间距、字符串及图片等。通过使用系统资源,不同的开发者可以开发出具有相同视觉风格的应用。
开发者可以通过$r('sys.type.resource_id')
的形式引用系统资源。sys代表是系统资源;type代表资源类型,可以取"color"
、"float"
、"string"
、"media"
;resource_id代表资源id。
开始之前我们直接上代码。
import hilog from '@ohos.hilog';
import testNapi from 'libentry.so'
import font from '@ohos.font';
@Entry
@Component
struct Index {
@State message: string = '访问系统资源'
aboutToAppear() {
// font.registerFont({
// familyName: 'medium',
// familySrc: '/font/kuaile.ttf'
// })
}
build() {
Row() {
Column() {
Text(this.message)
.fontColor($r('sys.color.ohos_fa_text_primary'))
.fontSize($r('sys.float.ohos_id_text_size_headline4'))
.fontFamily($r('sys.string.ohos_id_text_font_family_medium'))
.backgroundColor($r('sys.color.ohos_fa_palette3'))
Image($r('sys.media.ohos_app_icon'))
.opacity($r("sys.float.ohos_fa_alpha_content_tertiary"))
.border({
color: $r('sys.color.ohos_id_color_palette_aux1'),
radius: $r('sys.float.ohos_id_corner_radius_button'),
width: 2
})
.margin({
top: $r('sys.float.ohos_id_elements_margin_horizontal_m'),
bottom: $r('sys.float.ohos_id_elements_margin_horizontal_l')
})
.height(200)
.width(300)
}
.width('100%')
}
.height('100%').backgroundColor($r('sys.color.ohos_fa_palette5'))
}
}
通过代码是不是也就很快明白了如何访问系统资源。
接下来大家比较好奇的是不是就是这些资源ID是如何得到的。这里有个表格就可以看到。
更多关于在OpenHarmony以及HarmonyOS鸿蒙Next中如何访问系统资源的实战教程也可以访问 https://www.itying.com/category-93-b0.html
请问font.registerFont
的用法有介绍吗?我自己操作不会生效。
更多关于在OpenHarmony以及HarmonyOS鸿蒙Next中如何访问系统资源的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
这是上面用到的表格,发现上午忘记上传了
在OpenHarmony和HarmonyOS鸿蒙Next中,访问系统资源主要通过以下方式:
-
API调用:使用系统提供的API接口,如
@ohos.resourceManager
模块,通过getResourceManager
方法获取资源管理器,进而访问应用资源。 -
配置文件:在
config.json
中定义资源路径,系统会根据配置自动加载资源。 -
资源ID:通过资源ID访问具体资源,如字符串、图片等,使用
this.context.resourceManager.getStringValue(resId)
获取字符串资源。 -
权限管理:访问敏感资源需在
config.json
中声明相应权限,如ohos.permission.READ_MEDIA
。
确保遵循系统规范,合理使用资源,以保障应用性能和安全性。