You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改SyncFusion Flutter日历语言遇报错:GlobalMaterialLocalizations未定义

解决SyncFusion Flutter日历本地化时GlobalMaterialLocalizations未定义的问题

问题原因

GlobalMaterialLocalizations 和 GlobalWidgetsLocalizations 并非来自SyncFusion的本地化包,而是Flutter官方提供的flutter_localizations库,你缺少了对应的依赖与导入。

解决步骤

1. 添加flutter_localizations依赖

打开项目根目录下的pubspec.yaml,在dependencies区块中添加flutter_localizations依赖:

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter
  syncfusion_flutter_calendar: ^你的版本号
  syncfusion_localizations: ^你的版本号

添加后执行flutter pub get拉取依赖。

2. 导入flutter_localizations包

在你的dart文件顶部,补充以下导入语句:

import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:syncfusion_localizations/syncfusion_localizations.dart';

3. 保留现有配置

你的MaterialApp中的本地化配置无需修改,保持现有代码即可:

child: MaterialApp(
  localizationsDelegates: [
    GlobalMaterialLocalizations.delegate,
    GlobalWidgetsLocalizations.delegate,
    SfGlobalLocalizations.delegate,
  ],
  supportedLocales: [
    const Locale('en'),
    const Locale('zh'),
    const Locale('he'),
    const Locale('ru'),
    const Locale('fr', 'BE'),
    const Locale('fr', 'CA'),
    const Locale('ja'),
    const Locale('de'),
    const Locale('hi'),
    const Locale('ar'),
  ],
  locale: const Locale('zh'),
  // 其他配置...
)

完成以上步骤后,错误会消失,SyncFusion日历也能正常应用中文本地化设置。

内容的提问来源于stack exchange,提问作者mvasco

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 14:15:32