我在 Flutter-Web 应用程序中切换语言时遇到问题。我将所需的依赖项添加到package.yml
.
dependencies:
flutter:
sdk: flutter
intl: ^0.16.1
flutter_localizations:
sdk: flutter
dev_dependencies:
flutter_test:
sdk: flutter
intl_translation: ^0.17.9
intl
然后我在 MaterialApp 中初始化了这些东西。
[...]
child: MaterialApp(
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
S.delegate,
],
supportedLocales: S.delegate.supportedLocales,
[...]
这是我希望更改语言环境的代码。
Text(S.of(context).language),
RaisedButton(
child: Text("deutsch"),
onPressed: () {
S.load(Locale('de'));
},
),
RaisedButton(
child: Text("englisch"),
onPressed: () {
S.load(Locale('en'));
},
这里有两个arb
包含翻译的文件。
{
"language": "Deutsch"
}
{
"language": "English"
}
一切都编译了,我可以访问这些S.of(context)
类。我确定我错过了一些东西。因为如果我在 Android 模拟器中启动,语言的切换也不起作用。
在模拟器中切换系统区域设置会更改语言。
我将不胜感激任何帮助或提示。