Flutter中如何生成繁体中文的gen-l10n

在Flutter项目中,如何配置和生成支持繁体中文的gen-l10n本地化文件?我已经按照官方文档添加了简体中文的arb文件,但不知道如何为繁体中文单独生成对应的l10n文件。是否需要创建额外的arb文件,或者在pubspec.yaml中进行特殊配置?求具体的实现步骤和注意事项。

2 回复

在Flutter中生成繁体中文的gen-l10n,需在arb文件中添加繁体翻译,并在l10n.yaml中设置支持的语言包含zh_Hant。运行flutter gen-l10n即可生成。

更多关于Flutter中如何生成繁体中文的gen-l10n的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


在 Flutter 中生成繁体中文的 gen-l10n 文件,需要配置 l10n.yaml 文件并添加繁体中文语言支持。以下是步骤:

  1. 项目结构:确保项目根目录下有 l10n.yaml 文件,并在 lib 目录下创建 l10n 文件夹用于存放本地化文件(如 .arb 文件)。

  2. 配置 l10n.yaml:在 l10n.yaml 中指定支持的语言,包括繁体中文(zh_Hantzh_TW):

    arb-dir: lib/l10n
    template-arb-file: app_en.arb
    output-localization-file: app_localizations.dart
    output-class: AppLocalizations
    supported-locales:
      - en
      - zh_Hant  # 或使用 zh_TW 表示台湾繁体
    
  3. 创建 ARB 文件

    • lib/l10n 目录下创建 app_zh_Hant.arb(或 app_zh_TW.arb)文件。
    • 添加繁体中文翻译键值对,例如:
      {
        "helloWorld": "你好世界!",
        "@helloWorld": {
          "description": "简单的问候语"
        }
      }
      
  4. 生成代码:运行以下命令生成本地化类:

    flutter gen-l10n
    

    生成的文件将位于 lib/generated 目录中。

  5. 在应用中使用:在 MaterialApp 中配置生成的文件:

    return MaterialApp(
      localizationsDelegates: AppLocalizations.localizationsDelegates,
      supportedLocales: AppLocalizations.supportedLocales,
      home: MyHomePage(),
    );
    

注意事项

  • 确保 Flutter 版本支持 gen-l10n(建议使用 Flutter 2.0 或更高版本)。
  • 如果使用 zh_TW,需在 supportedLocales 中明确指定区域代码。
  • 运行命令后检查 lib/generated 目录是否成功生成文件。

通过以上步骤,即可为应用添加繁体中文支持。

回到顶部