1、安装Flutter Intl插件
2、添加依赖
# 国际化
flutter_localizations:
sdk: flutter
3、初始化项目
初始化完成后,pubspec.yaml
中会自动增加以下字段
flutter_intl:
enabled: true
lib中会自动生成generated
和l10n
两个目录
3、添加语言,如中文zh
4、配置语言(S.delegate为插件自动生成)
MaterialApp(
localizationsDelegates: const [
S.delegate,
GlobalMaterialLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
GlobalWidgetsLocalizations.delegate
],
supportedLocales: S.delegate.supportedLocales,
)
5、使用
在.arb文件编写字符串(其中en中必须定义全量的字符串,其他语言可以缺省(则取en的值))
替换字符串
另外.arb支持占位符方式
{
"testMsg": "test message {number}"
}
S.of(context).testMsg(1)
6、切换语言(手动切换语言生效时长为切换至应用关闭,另外期间不再响应系统语言切换)
S.load(Locale('zh', 'CN'));
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)