前言
Flutter 项目需要支持国际化,本次采用getx自带的国际化,简单快捷又方便。在我们使用系统自带MaterialApp来实现国际化配置,需要进行很多配置,而且还需要手动去依赖第三方组件,而使用GetX来实现国际化配置,你只需要一行代码即可实现切换,接下来我们看一下具体实现吧。
1、引入插件
get: ^4.6.5
2、在lib新建一个internationalization包,里面包含intl_en_us.dart、intl_zh_cn.dart和message.dart等文件;
intl_en_us.dart
final Map<String, String> intlEnUs = {
"title": "Home",
"setting_language": "Set Language",
"english": "English",
"chinese": "Chinese"
};
intl_zh_cn.dart
final Map<String, String> intlZhCn = {
"title": "首页",
"setting_language": "设置语言",
"english": "英文",
"chinese": "中文"
};
message.dart
import 'package:get/get.dart';
import 'intl_en_us.dart';
import 'intl_zh_cn.dart';
class Messages extends Translations {
@override
Map<String, Map<String, String>> get keys => {
'zh_cn': intlZhCn,
'en_us': intlEnUs