Flutter 多语言国际化配置 -- 使用Intl插件

  • Android Studio -> File -> Setting -> Plugins -> 搜索Flutter Intl

配置项目

首先在项目pubspec.yaml中添加如下语句并执行 package get

dependencies:
  flutter_localizations:
    sdk: flutter

在菜单栏的Tool下找到Flutter Intl 并选择Initalize for the project, 配置结束后效果如下:

1.会在 pubspec.yaml中增加以下字段

flutter_intl:
  enabled: true

2.会在lib目录下增加 generated 和 l10n两个包

  • generated包下的intl包默认存在一个messages_all.dart和messages_en.dart文件,messages开头的文件会在添加语言后自动生成
  • l10n包下存在一个intl_en.arb文件

添加语言

Tool下找到Flutter Intl 并选择Add Locale, 并输入语言类型(eg: zh),配置结束后会生成如下文件

  1. lib目录下l10n包下会生成一个 intl_zh.arb
  2. generated包下的intl包中生成messages_zh.dart文件

初始化Flutter国际化

在主页面build中加入

  1. 首先引入文件
    import 'generated/l10n.dart';
  2. 加入代码
    //多语言配置
    localizationsDelegates: [
      S.delegate,
      GlobalMaterialLocalizations.delegate,
      GlobalWidgetsLocalizations.delegate,
    ],
    supportedLocales: [
      const Locale('en','US'),
      const Locale('zh','CN'),
      ...S.delegate.supportedLocales
    ],
  • 配置多语言

分别在 intl_en.arb 和 intl_zh.arb下添加字符串

  • 在需要配置国际化的地方调用S.of(context).字符串即可
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值