diff --git a/zh-cn/application-dev/reference/apis/js-apis-resource-manager.md b/zh-cn/application-dev/reference/apis/js-apis-resource-manager.md index a9730a9f75e06f699156c449338d52ebb8c1d855..6a30bba2bd23574989482edb27fbf0c7fd7c870c 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-resource-manager.md +++ b/zh-cn/application-dev/reference/apis/js-apis-resource-manager.md @@ -2395,6 +2395,142 @@ getNumberByName(resName: string): number } ``` +### getDrawableDescriptor10+ + +getDrawableDescriptor(resId: number, density?: number): DrawableDescriptor; + +用户获取指定资源ID对应的DrawableDescriptor对象,使用同步方式返回资源对应的DrawableDescriptor,用于图标的显示。 + +**系统能力**:SystemCapability.Global.ResourceManager + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ----- | ------ | ---- | ----- | +| resId | number | 是 | 资源ID值 | +| [density](#screendensity) | number | 否 | 资源获取需要的屏幕密度,默认为0 | + +**返回值:** + +| 类型 | 说明 | +| ------ | ---------- | +| DrawableDescriptor | 资源ID值对应的DrawableDescriptor对象 | + +以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。 + +**错误码:** + +| 错误码ID | 错误信息 | +| -------- | ---------------------------------------- | +| 9001001 | If the resId invalid. | +| 9001002 | If the resource not found by resId. | + +**示例:** + ```ts + try { + this.context.resourceManager.getDrawableDescriptor($r('app.media.icon').id); + } catch (error) { + console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`) + } + try { + this.context.resourceManager.getDrawableDescriptor($r('app.media.icon').id, 120); + } catch (error) { + console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`) + } + ``` + +### getDrawableDescriptor10+ + +getDrawableDescriptor(resource: Resource, density?: number): DrawableDescriptor; + +用户获取指定resource对应的DrawableDescriptor对象,使用同步方式返回资源对应的DrawableDescriptor,用于图标的显示。 + +**系统能力**:SystemCapability.Global.ResourceManager + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ---------------------- | ---- | ---- | +| resource | [Resource](#resource9) | 是 | 资源信息 | +| [density](#screendensity) | number | 否 | 资源获取需要的屏幕密度,默认为0 | + +**返回值:** + +| 类型 | 说明 | +| ------- | ----------------- | +| DrawableDescriptor | 资源ID值对应的DrawableDescriptor对象 | + +以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。 + +**错误码:** + +| 错误码ID | 错误信息 | +| -------- | ---------------------------------------- | +| 9001001 | If the resId invalid. | +| 9001002 | If the resource not found by resId. | + +**示例:** + ```ts + let resource = { + bundleName: "com.example.myapplication", + moduleName: "entry", + id: $r('app.media.icon').id + }; + try { + this.context.resourceManager.getDrawableDescriptor(resource); + } catch (error) { + console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`) + } + try { + this.context.resourceManager.getDrawableDescriptor(resource, 120); + } catch (error) { + console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`) + } + ``` + +### getDrawableDescriptorByName10+ + +getDrawableDescriptorByName(resName: string, density?: number): DrawableDescriptor; + +用户获取指定资源名称对应的DrawableDescriptor对象,使用同步方式返回资源对应的DrawableDescriptor,用于图标的显示。 + +**系统能力**:SystemCapability.Global.ResourceManager + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ------- | ------ | ---- | ---- | +| resName | string | 是 | 资源名称 | +| [density](#screendensity) | number | 否 | 资源获取需要的屏幕密度,默认为0 | + +**返回值:** + +| 类型 | 说明 | +| ------ | --------- | +| DrawableDescriptor | 资源ID值对应的DrawableDescriptor对象 | + +以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。 + +**错误码:** + +| 错误码ID | 错误信息 | +| -------- | ---------------------------------------- | +| 9001003 | If the resName invalid. | +| 9001004 | If the resource not found by resName. | + +**示例:** + ```ts + try { + this.context.resourceManager.getDrawableDescriptorByName('icon'); + } catch (error) { + console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`) + } + try { + this.context.resourceManager.getDrawableDescriptorByName('icon', 120); + } catch (error) { + console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`) + } + ``` ### getString(deprecated)