app-starlock/lib/tools/showSeletDateTime.dart
2024-08-19 15:24:14 +08:00

45 lines
1.3 KiB
Dart
Executable File

import 'package:flutter/material.dart';
import 'package:flutter_cupertino_datetime_picker/flutter_cupertino_datetime_picker.dart';
import 'package:get/get.dart';
typedef DateValueCallback(DateTime dateTime, List<int> selectedIndex);
class ShowSelectDateTime {
void showDatePicker(BuildContext context, String maxT, String minT, String nowDate, String formatStr, DateValueCallback onConfirm,) {
// String MIN_DATETIME = '1900-01-01 00:00';
// String MAX_DATETIME = '2100-01-01 00:00';
// String INIT_DATETIME = getNowDate();
final DateTime _dateTime = DateTime.parse(nowDate);
const DateTimePickerLocale _locale = DateTimePickerLocale.zh_cn;
final String _format = formatStr;
DatePicker.showDatePicker(
context,
onMonthChangeStartWithFirstDate: true,
pickerTheme: DateTimePickerTheme(
cancel: Text('取消'.tr, style: const TextStyle(color: Colors.black)),
showTitle: true,
confirm: Text('确定'.tr, style: const TextStyle(color: Colors.black)),
),
minDateTime: DateTime.parse(minT),
maxDateTime: DateTime.parse(maxT),
initialDateTime: _dateTime,
dateFormat: _format,
locale: _locale,
onClose: () {
},
onCancel: () {
},
onChange: (dateTime, List<int> index) {
},
onConfirm: onConfirm,
);
}
}