Flutter|Flutter 国际化 flutter_translate 使用补充
【Flutter|Flutter 国际化 flutter_translate 使用补充】flutter_translate 有详细的使用指南
https://github.com/bratan/flutter_translate
这里仅作补充说明
flutter_translate 依赖于系统语言设置。并且提供切换语言的方法,(需要单独设置记录选中语言)否则app再次启动还是会按照系统语言设定。
1.语言文件名字的设置规则,需要按照{languageCode}_{countryCode}.json或者{languageCode}.json
文章图片
image.png
在设置默认语言,这里取的是当前系统语言。在supportedLocales中设置是支持的语言种类。这里并没有语言json文件和语言的对应,故在设置json文件的时候,要按照上述的规则设置。
var delegate = await LocalizationDelegate.create(
fallbackLocale: 'zh_Hans',
supportedLocales: ['en_US', 'zh_Hans', 'zh_Hant']);
runApp(LocalizedApp(delegate, MyApp()));
2.assets/i18n 文件的位置,建议放在工程目录的第一层。
虽然文档说明可以单独设置位置,但是默认的位置是工程目录的第一层。
3.如果需要保存app设置的语言,以便在下次启动的时候,按照app内设置的语言而不是按照系统语言则需要实现
ITranslatePreferences
,具体使用方法参考指南。推荐阅读
- Flutter的ListView
- 运用flutter|运用flutter 构建一个发布版(release)APK
- Flutter自定义view|Flutter自定义view —— 闯关进度条
- Flutter|Flutter SwiftUI React 对比
- flutter设置沉浸式状态栏
- 2019-12-02|2019-12-02 flutter的环境配置
- Flutter开发之布局Widget
- iOS国际化支持
- JS开发者值得一看的Flutter入门
- 写一个TODO|写一个TODO App学习Flutter数据库工具Moor