1、resources目录
应用的资源文件(字符串、图片、音频等)统一存放于resources目录下,便于开发者使用和维护。resources目录包括两大类目录,一类为base目录与限定词目录,另一类为rawfile目录
2、resources目录分类
2.1.组织形式:按照两级目录形式来组织,目录命名必须符合规范,以便根据设备状态去匹配相应目录下的资源文件。
一级子目录为base目录和限定词目录。base目录是默认存在的目录。当应用的resources资源目录中没有与设备状态匹配的限定词目录时,会自动引用该目录中的资源文件。限定词目录需要开发者自行创建。目录名称由一个或多个表征应用场景或设备特征的限定词组合而成,具体要求参见限定词目录。
二级子目录为资源目录,用于存放字符串、颜、布尔值等基础元素,以及媒体、动画、布局等资源文件,具体要求参见资源组目录)。
支持创建多层子目录,目录名称可以自定义,文件夹内可以自由放置各类资源文件。
rawfile目录的文件不会根据设备状态去匹配不同的资源。
编译方式:目录中的资源文件会被编译成二进制文件,并赋予资源文件ID。
目录中的资源文件会被直接打包进应用,不经过编译,也不会被赋予资源文件ID。
2.2.引用方式:通过文件类型(type)和资源名称(name)的组合引用。
Java文件采用:ResourceTable.*type*_****name。特别地,如果引用的是系统资源,则采用:ohos.global.systemres.ResourceTable.*type*_*name*。
XML文件采用:$*type*:*name*。特别地,如果引用的是系统资源,则采用:$ohos:*type*:*name*。
通过指定文件路径和文件名来引用。
3、限定词目录
限定词目录可以由一个或多个表征应用场景或设备特征的限定词组合而成,包括语言、文字、国家或地区、横竖屏、设备类型和屏幕密度等六个维度,限定词之间通过下划线(_)或者中划线(-)连接。开发者在创建限定词目录时,需要掌握限定词目录的命名要求以及与限定词目录与设备状态的匹配规则。
限定词的组合顺序:语言_文字_国家或地区-横竖屏-设备类型-屏幕密度。开发者可以根据应用的使用场景和设备特征,选择其中的一类或几类限定词组成目录名称。
限定词的连接方式:语言、文字、国家或地区之间采用下划线(_)连接,除此之外的其他限定词之间均采用中划线(-)连接。
4、限定词目录与设备状态的匹配规则
在为设备匹配对应的资源文件时,限定词目录匹配的优先级从高到低依次为:区域(语言_文字_国家或地区)> 横竖屏 > 设备类型 > 屏幕密度。
更新鸿蒙系统如果限定词目录中包含语言、文字、横竖屏、设备类型限定词,则对应限定词的取值必须与当前的设备状态完全一致,该目录才能够参与设备的资源匹配。例如,限定词目录“zh_CN-car-ldpi”不能参与“en_US”设备的资源匹配。
5、Element
发布评论