Flutter自带的日期选择器是showDatePicker,时间选择器是showTimePicker。
这两个选择器默认的显示效果都是英文的,我们是在中国,那么就需要将其显示成中文版的,这就涉及到Flutter的国际化的问题。
关于Flutter的国际化,接下来我将为大家做详细讲解。
Flutter中的国际化
第一步:配置flutter_localizations依赖
找到pubspec.yaml,配置flutter_localizations
dependencies: flutter_localizations:
sdk: flutter
第二步:导入国际化的包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;
}
});
});
}