Flutter自带的日期选择器是showDatePicker,时间选择器是showTimePicker。
这两个选择器默认的显示效果都是英文的,我们是在中国,那么就需要将其显示成中文版的,这就涉及到Flutter的国际化的问题。
关于Flutter的国际化,接下来我将为大家做详细讲解。
Flutter中的国际化
第一步:配置flutter_localizations依赖
找到pubspec.yaml,配置flutter_localizations
dependencies:
flutter_sheet_localization: ^1.0.0
第二步:导入国际化的包flutter_localizations.dart
import 'package:flutter_localizations/flutter_localizations.dart';
在入口文件下添加設置
class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: new BottomNavigationWidget(), //配置如下两个国际化的参数 localizationsDelegates: [ GlobalMaterialLocalizations.delegate, GlobalWidgetsLocalizations.delegate ], supportedLocales: [ const Locale("zh", "CH"), const Locale("en", "US") ], ); } }
在使用組件的下添加
//_代表私有,重寫私有的日曆組建 _showDatePicker() { showDatePicker( context:context,//上下文必須傳入 initialDate:_nowDate,//設置初始化日期 firstDate: DateTime(1980), lastDate: DateTime(2100), locale: prefix0.Locale('zh')//中文显示 ).then((val){ setState(() { if(val!=null){ //將獲得時間傳給變量 this._nowDate =val; } }); }); }