【Flutter】多语言方案一:flutter_localizations 与 GetX 配合版

介绍

多语言方案:flutter_localizations 与 GetX 配合版,好处:命令行生成多语言字符串的引用常量类,缺点:切换语言以后,主界面需要手动触发setState,重绘将最新的Locale数据设置给GetMaterialApp。



运行效果

在这里插入图片描述

一、安装

dependencies:
flutter_localizations:
sdk: flutter
intl: any
get: ^4.6.6

flutter:
uses-material-design: true
generate: true

二、使用

1.lib文件夹中新建文件夹l10n/arb,并在其中创建app_en.arb 、app_zh.arb、app_zh_HK.arb文件

app_en.arb类

{
  "@@locale": "en",
  "appName": "BraveComponent",
  "@appName": {
      "description": "备注"
  },
  "helloWorld": "HelloWorld",
  "followerSystemLanguage": "FollowerSystemLanguage",
  "simplifiedChinese": "SimplifiedChinese",
  "traditionalChinese": "TraditionalChinese",
  "english": "English",
  "setting": "Setting",
  "multiLanguage": "MultiLanguage",
  "theme": "Theme"
}

app_zh.arb类

{
  "@@locale": "zh",
  "appName": "BraveComponent",
  "@appName": {
      "description": "备注"
  },
  "helloWorld": "你好,世界",
  "followerSystemLanguage": "跟随系统语言",
  "simplifiedChinese": "简体中文",
  "traditionalChinese": "繁体中文",
  "english": "英文",
  "setting": "设置",
  "multiLanguage": "多语言",
  "theme": "主题"
}

app_zh.arb类

{
   "@@locale": "zh_HK",
   "appName": "BraveComponent",
   "@appName": {
       "description": "備注"
   },
   "helloWorld": "妳好,世界",
   "followerSystemLanguage": "跟隨系統語言",
   "simplifiedChinese": "簡體中文",
   "traditionalChinese": "繁體中文",
   "english": "英文",
   "setting": "設置",
   "multiLanguage": "多語言",
   "theme": "主題"
}

2.项目的根目录中添加l10n.yaml,配置如下

arb-dir: lib/l10n/arb
template-arb-file: app_zh.arb
output-localization-file: app_localizations.dart
output-class: AppLocalizations
use-deferred-loa
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值