提交 8999395d 编写于 作者: Z zt147369

string同步接口变更

Signed-off-by: Nzt147369 <zhangting201@huawei.com>
上级 75299bed
......@@ -2057,6 +2057,54 @@ getStringSync(resId: number): string
}
```
### getStringSync<sup>10+</sup>
getStringSync(resId: number, ...args): string
用户获取指定资源ID对应的字符串,根据args参数判断是否进行格式化,使用同步方式返回相应字符串。
**系统能力**:SystemCapability.Global.ResourceManager
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----- | ------ | ---- | ----- |
| resId | number | 是 | 资源ID值 |
| args | ... | 否 | 格式化字符串资源参数 <br> 支持参数类型:<br /> -%d、%f、%s、%% <br> 说明:%%转译符,转译%<br>举例:%%d格式化后为%d字符串|
**返回值:**
|前提| 类型 | 说明 |
|----| ------ | ---------------------------- |
|args不传参| string | 资源ID值对应的字符串|
|args传参| string | 资源ID值对应的格式化字符串|
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)
**错误码:**
| 错误码ID | 错误信息 |
| -------- | ----------------------------------------------- |
| 9001001 | If the resId invalid. |
| 9001002 | If the resource not found by resId. |
| 9001006 | If the resource re-ref too much. |
| 9001007 | If the resource obtained by resId formatting error. |
**示例:**
```ts
try {
this.context.resourceManager.getStringSync($r('app.string.test').id);
} catch (error) {
console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
try {
this.context.resourceManager.getStringSync($r('app.string.test').id, "format string", 10, 98.78);
} catch (error) {
console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
```
### getStringSync<sup>9+</sup>
getStringSync(resource: Resource): string
......@@ -2101,6 +2149,59 @@ getStringSync(resource: Resource): string
}
```
### getStringSync<sup>10+</sup>
getStringSync(resource: Resource, ...args): string
用户获取指定resource对象对应的字符串,根据args参数判断是否进行格式化,使用同步方式返回相应字符串。
**系统能力**:SystemCapability.Global.ResourceManager
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是 | 资源信息 |
| args | ... | 否 | 格式化字符串资源参数 <br> 支持参数类型:<br /> -%d、%f、%s、%% <br> 说明:%%转译符,转译%<br>举例:%%d格式化后为%d字符串|
**返回值:**
|前提| 类型 | 说明 |
|----| ------ | ---------------------------- |
|args不传参| string | resource对象对应的字符串|
|args传参| string | resource对象对应的格式化字符串|
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)
**错误码:**
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001 | If the resId invalid. |
| 9001002 | If the resource not found by resId. |
| 9001006 | If the resource re-ref too much. |
| 9001007 | If the resource obtained by resId formatting error. |
**示例:**
```ts
let resource = {
bundleName: "com.example.myapplication",
moduleName: "entry",
id: $r('app.string.test').id
};
try {
this.context.resourceManager.getStringSync(resource);
} catch (error) {
console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
try {
this.context.resourceManager.getStringSync(resource, "format string", 10, 98.78);
} catch (error) {
console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
```
### getStringByNameSync<sup>9+</sup>
getStringByNameSync(resName: string): string
......@@ -2140,6 +2241,54 @@ getStringByNameSync(resName: string): string
}
```
### getStringByNameSync<sup>10+</sup>
getStringByNameSync(resName: string, ...args): string
用户获取指定资源名称对应的字符串,根据args参数判断是否进行格式化,使用同步方式返回相应字符串。
**系统能力**:SystemCapability.Global.ResourceManager
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------ | ---- | ---- |
| resName | string | 是 | 资源名称 |
| args | ... | 否 | 格式化字符串资源参数 <br> 支持参数类型:<br /> -%d、%f、%s、%% <br> 说明:%%转译符,转译%<br>举例:%%d格式化后为%d字符串|
**返回值:**
|前提| 类型 | 说明 |
|----| ------ | ---------------------------- |
|args不传参| string | 资源名称对应的字符串|
|args传参| string | 资源名称对应的格式化字符串|
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。
**错误码:**
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001003 | If the resName invalid. |
| 9001004 | If the resource not found by resName. |
| 9001006 | If the resource re-ref too much. |
| 9001008 | If the resource obtained by resName formatting error. |
**示例:**
```ts
try {
this.context.resourceManager.getStringByNameSync("test");
} catch (error) {
console.error(`getStringByNameSync failed, error code: ${error.code}, message: ${error.message}.`)
}
try {
this.context.resourceManager.getStringByNameSync("test", "format string", 10, 98.78);
} catch (error) {
console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
```
### getBoolean<sup>9+</sup>
getBoolean(resId: number): boolean
......
......@@ -114,4 +114,48 @@ the resource re-ref too much.
**处理步骤**
查看资源$引用的地方,去除循环引用的情况。
\ No newline at end of file
查看资源$引用的地方,去除循环引用的情况。
## 9001007 根据当前id获取的资源格式化失败
**错误信息**
The resource obtained by resId formatting error.
**错误描述**
resId获取的字符串资源格式化失败。
**可能原因**
1、参数类型不在支持范围内。
2、参数与占位符个数不等。
3、参数与占位符类型不匹配。
**处理步骤**
查看args参数类型与占位符的个数、类型是否一致。
## 9001008 根据当前名称获取的资源格式化失败
**错误信息**
The resource obtained by resName formatting error.
**错误描述**
resName获取的字符串资源格式化失败。
**可能原因**
1、参数类型不在支持范围内。
2、参数与占位符个数不等。
3、参数与占位符类型不匹配。
**处理步骤**
查看args参数类型与占位符的个数、类型是否一致。
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册