flutter_cupertino_date_picker的使用

 引用的插件:

  date_format: ^1.0.8
  flutter_localizations:
    sdk: flutter
  flutter_cupertino_date_picker: ^1.0.12
import 'package:flutter/material.dart';
import 'package:flutter_cupertino_date_picker/flutter_cupertino_date_picker.dart';
import 'package:date_format/date_format.dart' as dateFormat;

class DatePickerPage extends StatefulWidget {
  DatePickerPage({Key key}) : super(key: key);

  @override
  _DatePickerPageState createState() {
    return _DatePickerPageState();
  }
}

class _DatePickerPageState extends State<DatePickerPage> {
  var _nowDate = DateTime.now();

  _timePickerWidget() {
    DatePicker.showDatePicker(context,
        //配置語言
        locale: DateTimePickerLocale.zh_cn,
        //日期樣式
        pickerTheme: DateTimePickerTheme(
          confirm: Text("確定",style: TextStyle(fontSize: 20),),
          cancel: Text("取消",style: TextStyle(fontSize: 20),),
        ),
        //最小日期限制
        minDateTime: DateTime.parse("1965-01-01"),
        //最大日期限制
        maxDateTime: DateTime.parse("2100-01-01"),
        //初試日期
        initialDateTime: DateTime.now(),
        dateFormat: "yyyy-MM-dd EEE,H時:m分",
        pickerMode: DateTimePickerMode.datetime,//show datetime 配置爲datetime格式的時候 dateFormat必須要加上時分的格式
        //在日期發生改變的時候實時更改日期
        onChange: (date, List<int> index) {
      setState(() {
        _nowDate = date;
      });
    }, //點擊確認後才更改日期
        onConfirm: (date, List<int> index) {
          setState(() {
            _nowDate = date;
          });
        });
  }

  @override
  void initState() {
    super.initState();
  }

  @override
  void dispose() {
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("CupertinoDatePickerPage"),
      ),
      body: Column(
        children: <Widget>[
          InkWell(
            onTap: _timePickerWidget,
            child: Row(
              children: <Widget>[
                Text(dateFormat.formatDate(_nowDate, [dateFormat.yyyy, '年', dateFormat.mm, '月', dateFormat.dd, '日',dateFormat.HH,'時',dateFormat.n,'分'])),
                Icon(Icons.keyboard_arrow_down)
              ],
            ),
          )
        ],
      ),
    );
  }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章