我的项目使用flutter_cupertino_localizations包,并用于编译和正常运行。截止到今天,我的编译错误已消失。
Compiler message:
file:///Users/.../Applications/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_cupertino_localizations-1.0.1/lib/src/cupertino_localizations.dart:127:38: Error: Getter not found: 'kSupportedLanguages'.
bool isSupported(Locale locale) => kSupportedLanguages.contains(locale.languageCode);
这是我上次进行此项目时(过去几周)的正常编译。我唯一能想到的改变是我正在使用的Xcode版本(以前是10版,现在是11版)。
flutter --version
的输出是:
Flutter 1.5.8•通道未知•未知源 框架•修订版0ba67226ee(6个月前)•2019-04-24 17:18:28 -0700 引擎•版本c63d1cf9c9 工具•Dart 2.3.0(内部版本2.3.0-dev.0.1 1f1592edce)
答案 0 :(得分:0)
该错误可能是因为您在 MaterialApp
中像这样配置语言环境:
MaterialApp(
...
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
],
supportedLocales: [const Locale('pt', 'BR')],
);
但是您忘记在您的 GlobalCupertinoLocalizations.delegate
中添加 localizationsDelegates
。然后要解决这个问题,只需像这样添加它:
MaterialApp(
...
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
supportedLocales: [const Locale('pt', 'BR')],
);
但是如果您删除所有这些配置,您的应用程序将加载默认配置并且可以完美运行。但语言默认为英语。