如何实现ArkUI组件字符串变量拼接

例如:Text()组件的字符串变量拼接功能,如何实现?

Text($r('app.string.EntryAbility_desc', 'Hello'))
HarmonyOS
2024-03-17 12:46:39
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

可以通过资源文件结合%d、%s的方式进行实现。

示例如下所示:

1.修改"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" 
    } 
  ] 
}

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

{ 
  "string": [ 
    { 
      "name": "module_desc", 
      "value": "module description%d" 
    }, 
    { 
      "name": "EntryAbility_desc", 
      "value": "description%d" 
    }, 
    { 
      "name": "EntryAbility_label", 
      "value": "label" 
    } 
  ] 
}

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%') 
  } 
}

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

参考链接

资源访问

分享
微博
QQ
微信
回复
2024-03-17 22:23:48
相关问题
$r('xxxxx')是否支持字符串动态拼接
802浏览 • 1回复 待解决
如何实现字符串编解码
1175浏览 • 1回复 待解决
ArkTS如何实现字符串编解码
1348浏览 • 1回复 待解决
如何实现Map转JSON字符串
625浏览 • 1回复 待解决
如何解析JSON字符串
428浏览 • 1回复 待解决
如何生成UUID的字符串
1012浏览 • 1回复 待解决
如何压缩字符串,有人知道吗?
483浏览 • 1回复 待解决
emoji字符串无法进行截取
517浏览 • 1回复 待解决
嵌套JSON字符串解析问题
813浏览 • 1回复 待解决
如何加载字符串形式H5数据
775浏览 • 1回复 待解决
Web如何使用loadData加载复杂Html字符串
1016浏览 • 1回复 待解决
如何将文件转换成字符串
31浏览 • 1回复 待解决
如何字符串进行MD5哈希处理
1174浏览 • 1回复 待解决
关于字符串的分割和重组处理
2757浏览 • 1回复 待解决
sql 怎么对带单位字符串排序?
1209浏览 • 1回复 待解决
eTS中如何进行时间与字符串转换?
2825浏览 • 1回复 待解决
AES加解密长字符串是否需要分段
208浏览 • 1回复 待解决
mysql order对数字型字符串排序
1160浏览 • 1回复 待解决