Mar*_*ark 5 flutter flutter-web flutter-intl
我在 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
Run Code Online (Sandbox Code Playgroud)
然后我初始化了intlMaterialApp 中的东西。
[...]
child: MaterialApp(
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
S.delegate,
],
supportedLocales: S.delegate.supportedLocales,
[...]
Run Code Online (Sandbox Code Playgroud)
这是我希望更改区域设置的代码。
Text(S.of(context).language),
RaisedButton(
child: Text("deutsch"),
onPressed: () {
S.load(Locale('de'));
},
),
RaisedButton(
child: Text("englisch"),
onPressed: () {
S.load(Locale('en'));
},
Run Code Online (Sandbox Code Playgroud)
这是arb包含翻译的两个文件。
{
"language": "Deutsch"
}
Run Code Online (Sandbox Code Playgroud)
{
"language": "English"
}
Run Code Online (Sandbox Code Playgroud)
一切都编译完毕,我可以访问这些S.of(context)类。我确信我错过了什么。因为如果我在 Android 模拟器中启动,语言切换也不起作用。
在模拟器中切换系统区域设置会更改语言。
我将不胜感激任何帮助或提示。
| 归档时间: |
|
| 查看次数: |
507 次 |
| 最近记录: |