参考文献
https://pub.dev/packages/flutter_datetime_picker/install
drum_roll.dart
import 'package:flutter/material.dart';
import 'package:flutter_datetime_picker/flutter_datetime_picker.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Date Picker Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: DatePickerScreen(),
);
}
}
class DatePickerScreen extends StatefulWidget {
@override
_DatePickerScreenState createState() => _DatePickerScreenState();
}
class _DatePickerScreenState extends State<DatePickerScreen> {
DateTime? _selectedDate;
void _showDatePicker() {
DatePicker.showDatePicker(
context,
showTitleActions: true,
minTime: DateTime(1900),
maxTime: DateTime.now(),
onConfirm: (date) {
setState(() {
_selectedDate = date;
});
},
currentTime: _selectedDate ?? DateTime.now(),
locale: LocaleType.en,
);
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Date Picker'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
ElevatedButton(
onPressed: () {
_showDatePicker();
},
child: Text(
_selectedDate != null
? 'Selected Date: ${_selectedDate!.toLocal()}'
: 'Select Date',
),
),
],
),
),
);
}
} エラー事例
../../AppData/Local/Pub/Cache/hosted/pub.dev/flutter_datetime_picker-1.5.1/lib/flutter_datetime_picker.dart:6:1: Error: 'DatePickerTheme' is imported from both 'package:flutter/src/material/date_picker_theme.dart' and 'package:flutter_datetime_picker/src/datetime_picker_theme.dart'.
import 'package:flutter_datetime_picker/src/datetime_picker_theme.dart';
^^^^^^^^^^^^^^^
../../AppData/Local/Pub/Cache/hosted/pub.dev/flutter_datetime_picker-1.5.1/lib/flutter_datetime_picker.dart:199:31: Error: 'DatePickerTheme' is imported from both 'package:flutter/src/material/date_picker_theme.dart' and 'package:flutter_datetime_picker/src/datetime_picker_theme.dart'.
this.theme = theme ?? DatePickerTheme(),
^^^^^^^^^^^^^^^
Target kernel_snapshot failed: Exception 解決方法
flutter_datetime_pickerの代わりにflutter_datetime_picker_plusを使用する。
pubspec.yaml
dependencies:
...
flutter_datetime_picker_plus: ^2.0.1
... インポート
import 'package:flutter_datetime_picker_plus/flutter_datetime_picker_plus.dart';