2024-08-20 09:53:39 +08:00

70 lines
1.5 KiB
Dart
Executable File

// 是否需要 显示/设置 对应的选项
// import 'package:flutter_pickers/time_picker/model/date_mode.dart';
import 'package:star_lock/tools/pickers/time_picker/model/date_mode.dart';
class DateItemModel {
DateItemModel(
this.year, this.month, this.day, this.hour, this.minute, this.second);
DateItemModel.parse(DateMode dateMode) {
year = DateModeMap[dateMode]!.contains('');
month = DateModeMap[dateMode]!.contains('');
day = DateModeMap[dateMode]!.contains('');
hour = DateModeMap[dateMode]!.contains('');
minute = DateModeMap[dateMode]!.contains('');
second = DateModeMap[dateMode]!.contains('');
}
late bool year;
late bool month;
late bool day;
late bool hour;
late bool minute;
late bool second;
// 返回需要显示多少个picker
int get length {
int i = 0;
if (year) {
++i;
}
if (month) {
++i;
}
if (day) {
++i;
}
if (hour) {
++i;
}
if (minute) {
++i;
}
if (second) {
++i;
}
return i;
}
}
const DateModeMap = {
DateMode.YMDHMS: '年月日时分秒',
DateMode.YMDHM: '年月日时分',
DateMode.YMDH: '年月日时',
DateMode.YMD: '年月日',
DateMode.YM: '年月',
DateMode.Y: '',
DateMode.MDHMS: '月日时分秒',
DateMode.MDHM: '月日时分',
DateMode.MDH: '月日时',
DateMode.MD: '月日',
DateMode.HMS: '时分秒',
DateMode.HM: '时分',
DateMode.MS: '分秒',
DateMode.S: '',
DateMode.M: '',
DateMode.H: ''
};