HarmonyOS 有个字符串资源文件,后面怎么拼接字符串?

let text : string =  $r(`app.string.${"yixuanze"}`) + "(" + aNumber + ")"
  • 1.

就是上面这样,有一部分需要语言国际化,然后后面拼多出来的字符,怎么解决?

HarmonyOS
2024-11-04 12:01:57
1200浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

​1、可以结合资源文件结合%d、%s的方式进行实现。使用样例如下所示。

修改src/main/resources/zh_CN/element/string.json文件,对其中的一个需要变量拼接内容增加%d拼接。​

{ 
  "string": [ 
  { 
    "name": 
    "module_desc", "value": 
    "模块描述%d" 
  } 
  , 
  { 
    "name": 
    "EntryAbility_desc", "value": 
    "description" 
  } 
  , 
  { 
    "name": 
    "EntryAbility_label", "value": 
    "label" 
  } 
  ] 
} 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.

2、在页面组件中使用$r(xx)加上拼接变量进行使用。

@Entry 
@Component 
struct Page1 { 
  @State num1: number = 100; 
  build() { 
    Row() { 
      Column() { 
        Text($r('app.string.module_desc', this.num1)).fontSize(50).fontWeight(FontWeight.Bold) 
      }.width('100%') 
    }.height('100%') 
  } 
} 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

3、切换中英文语言时,会自动跟随语言的切换带入对应的变量信息。

分享
微博
QQ
微信
回复
2024-11-04 16:12:57


相关问题
HarmonyOS 获取资源文件配置字符串
360浏览 • 1回复 待解决
转换整个字符串字符为小写
571浏览 • 1回复 待解决
转换整个字符串字符为大写
644浏览 • 1回复 待解决
如何实现ArkUI组件字符串变量拼接
878浏览 • 1回复 待解决
如何实现ArkUI组件字符串变量拼接
3245浏览 • 1回复 待解决
检查字符串是否以给定的字符串开头
1034浏览 • 1回复 待解决
$r('xxxxx')是否支持字符串动态拼接
2612浏览 • 1回复 待解决
字符串资源引用出错,该怎么办啊?
1199浏览 • 1回复 待解决
字符串反射
381浏览 • 1回复 待解决
HarmonyOS字符串替换问题
1281浏览 • 1回复 待解决
HarmonyOS 字符串显示异常
836浏览 • 1回复 待解决
检查字符串是否以给定的字符串结尾
837浏览 • 1回复 待解决