1,先在AndroidStudio或者Idea中安装一款插件,Flutter Intl,如图:
安装后重启编译器
2, 新增依赖 dependencies 下面添加如下代码:
dependencies:
flutter:
sdk: flutter
flutter_localizations:
pub get一下
3,点击编辑器的Tools,找到Flutter Intl,对项目进行初始化,如下:
4,初始化完成后lib下会生成很多文件 ,如下:
yaml文件下也会增加一行配置
flutter_intl:
enabled: true
5,添加我们自定义的国际化语言,如图:
添加完成之后,插件会自动帮我们生成两个文件,在I10n文件夹下,如图:
6,配置我们的国际化,在materiaApp下进行如下配置
MaterialApp(
title: 'Flutter Demo',
localizationsDelegates: const [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
S.delegate
],
supportedLocales: const [
Locale('zh', 'CN'),
Locale('en', 'US'),
],
locale: const Locale('en', 'US'),
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const MyHomePage(),
)
其中supportedLocales数组对应的你配置的国际化文件列表数组,locale对应的你指定的国际化类型
7,然后在生成的文件intl_zh_CN.arb 和intl_en.arb中添加对应的json,添加完成之后点一下Terminal触发一下编译,在需要使用的地方使用S.of(context)."你的jsonKey"即可