Flutter 約 1 分

Flutterドラムロール_

参考文献
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';

関連記事