localization - Flutter 全局材料本地化和初始化日期格式无法协同工作
问题描述
我在颤振应用程序中使用本地化,但也想使用初始化日期格式来本地化日期格式。我的主要看起来像这样......
void main() {
runApp(new MaterialApp(
supportedLocales:
[const Locale('en', 'US'),
const Locale('en', 'AU')],
localizationsDelegates: [
const DemoLocalizationsDelegate(),
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate
],
home: new ThirdPageWidget(),
navigatorObservers: [routeObserver],
));
}
此外,我在这样的有状态小部件中有一个 initializeDateFormatting ...
@override
void initState() {
super.initState();
initializeDateFormatting().then((_) {
dateFormat = new DateFormat.yMd('en_AU');
print(dateFormat.format(DateTime.now()));
});
现在,当语言环境为 en_AU 时,日期格式为月/日/年美式风格,但是当我删除这行代码时
GlobalMaterialLocalizations.delegate,
日期正确显示日/月/年。有谁知道我能做些什么来解决这个问题?拥有 GlobalMaterialLocalizations.delegate 有多重要?
解决方案
我通过在pubspec.yaml 中添加以下依赖项解决了这个问题:
dependencies:
...
flutter_localizations:
sdk: flutter
...
小心缩进。
推荐阅读
- zeromq - ZeroMQ Gnuradio 接口
- codeigniter - 试图从日期中删除 1 个月
- python - 在 python 中创建网格等值。行进立方体
- java - Spring REST 调用响应类型对象,差异很小
- html - Xamarin 在标签中形成 HTML
- excel - 如果在字符串中,则为单词着色
- javascript - Fullcalendar 4.x - 如何为事件添加唯一 ID
- amazon-web-services - 我正在尝试通过 AWS lambda 调用批处理操作。我希望批处理将输出返回到我的 lambda
- azure - 无法在 Azure Functions Linux 消费计划上编辑 CORS
- node.js - 在节点js中使用全局变量