Skip to content

国际化 ​

StatLab 使用 Flutter 官方 gen-l10n 方案。

文件布局 ​

lib/l10n/
  app_en.arb          # 模板(英文)
  app_zh.arb          # 简体中文
  app_localizations.dart      # 生成
  app_localizations_en.dart   # 生成
  app_localizations_zh.dart   # 生成
l10n.yaml

配置 ​

yaml
# l10n.yaml
arb-dir: lib/l10n
template-arb-file: app_en.arb
output-localization-file: app_localizations.dart
output-class: AppLocalizations
output-dir: lib/l10n
nullable-getter: false

使用 ​

dart
import 'package:stats_flutter/l10n/app_localizations.dart';

final l10n = AppLocalizations.of(context);
Text(l10n.tabData);
Text(l10n.questionOf(3, 10)); // 带占位符

添加字符串 ​

  1. 在 app_en.arb 与 app_zh.arb 同步添加 key
  2. 运行 flutter gen-l10n
  3. 在代码中引用

支持的语言 ​

代码语言状态
enEnglish✅ 首发
zh简体中文✅ 首发

添加新语言:新建 app_<code>.arb,并在 MaterialApp.supportedLocales 中注册。

Released under the AGPL-3.0 License.