HarmonyOS 鸿蒙Next给一个可以设置国际化支持中文和英文展示的demo

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next给一个可以设置国际化支持中文和英文展示的demo

给一个可以设置国际化,支持中文和英文,展示的demo 

2 回复

目前你可以查询系统当前支持的语言,然后通过设置应用偏好的语言来改变当前需要显示的语言,注意如果要使用国际化语言,首先要确保使用的国际化语言放在resource目录下string.json的文件中,如果未在此包下定义,设置应用偏好语言的时候是没有效果的,

系统支持语言参考文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-i18n

系统偏好语言设置参考文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-i18n#setapppreferredlanguage11

参考下这个demo:

import router from '@ohos.router';

import I18n from '@ohos.i18n';

@Component

@Entry

struct Index {

  status:number=0

  build() {

    Column() {

      Text($r('app.string.module_desc'))

        .onClick(() => {

          router.pushUrl({url:'pages/Index2'})

        })

      Button('改变语言').onClick(()=>{

        if(this.status==0){

          I18n.System.setAppPreferredLanguage('zh-Hans');

          this.status=1

        }else{

          I18n.System.setAppPreferredLanguage('en-Latn-US');

          this.status=0

        }

      })

    }

  }

}

更多关于HarmonyOS 鸿蒙Next给一个可以设置国际化支持中文和英文展示的demo的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)系统中实现国际化支持,可以通过资源文件配置多语言内容,并在代码中动态加载相应的资源。以下是一个简单的示例代码,展示如何设置国际化支持中文和英文展示:

  1. 资源文件配置

    创建两个资源文件夹:resources_enresources_zh,分别存放英文和中文的资源文件。

    • resources_en/strings.json

      {
        "hello": "Hello"
      }
      
    • resources_zh/strings.json

      {
        "hello": "你好"
      }
      
  2. 代码实现

    在代码中,通过$r函数加载对应的资源:

    import app from '[@system](/user/system).app';
    
    [@Entry](/user/Entry)
    [@Component](/user/Component)
    struct Index {
      @State message: string = $r('strings.json', 'hello');
    
      build() {
        Column() {
          Text(this.message)
        }
      }
    }
    
    module.exports = {
      entry: './src/main/Index.ts',
      config: {
        module: {
          resource: {
            locales: ['en-US', 'zh-CN']
          }
        }
      }
    }
    

    此代码会根据系统语言自动加载相应的资源文件,并展示对应的文本。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部