ava*_*fab 8 localization android-studio flutter
我在带有 CSV 加载程序的颤振项目中使用 easy_localization: ^2.3.3。当我构建它时,它无法找到键并给出“轻松本地化:未找到本地化键 [...]”。任何想法为什么会发生这种情况?
runApp(EasyLocalization(
supportedLocales: [
Locale('en', ''),
Locale('it', ''),
Locale('es', ''),
Locale('de', ''),
Locale('fr', ''),
Locale('pt', ''),
],
path: 'resources/langs/langs.csv',
fallbackLocale: Locale('en', ''),
saveLocale: false,
useOnlyLangCode: true,
assetLoader: CsvAssetLoader(),
child: MyApp(status),
));
}
Run Code Online (Sandbox Code Playgroud)
小智 7
未设置材料应用程序也可能发生此错误;我的意思是,由于忘记将这些行添加到我的材料应用程序中,我遇到了同样的错误;
MaterialApp(
locale: context.locale,
supportedLocales: context.supportedLocales,
localizationsDelegates: context.localizationDelegates,
),
Run Code Online (Sandbox Code Playgroud)
我的问题解决了!
你需要导入import 'package:easy_localization/easy_localization.dart';
并添加到您的 MaterialApp 中:
locale: context.locale,
supportedLocales: context.supportedLocales,
localizationsDelegates: context.localizationDelegates,
Run Code Online (Sandbox Code Playgroud)
我找到了一个解决此错误的解决方案:https ://github.com/aissat/easy_localization/issues/190#
我添加了以下内容:
dependencies:
easy_localization_loader:
git:
url: git://github.com/aissat/easy_localization_loader.git
ref: overman-dev
Run Code Online (Sandbox Code Playgroud)
然后我做了一个
flutter pub upgrade
Run Code Online (Sandbox Code Playgroud)
并将代码更改为这样
runApp(EasyLocalization(
supportedLocales: [
Locale('en'),
Locale('it'),
Locale('es'),
Locale('de'),
Locale('fr'),
Locale('pt'),
],
path: 'resources/langs/langs.csv',
fallbackLocale: Locale('en'),
saveLocale: false,
useOnlyLangCode: true,
assetLoader: CsvAssetLoader(),
child: MyApp(status),
));
Run Code Online (Sandbox Code Playgroud)
有效。
| 归档时间: |
|
| 查看次数: |
2162 次 |
| 最近记录: |