Files
2023-11-22 14:53:35 +04:30

74 lines
2.2 KiB
Dart
Executable File

import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:intl/intl.dart' as DateEditor;
class LabelAddDatePicker extends StatefulWidget {
LabelAddDatePicker({
Key? key,
required this.dateCTRL,
required double deviceBlockSize,
required String label,
}) : _deviceBlockSize = deviceBlockSize,
_label = label,
super(key: key);
final TextEditingController dateCTRL;
final double _deviceBlockSize;
final String _label;
@override
_LabelAddDatePickerState createState() => _LabelAddDatePickerState();
}
class _LabelAddDatePickerState extends State<LabelAddDatePicker> {
@override
Widget build(BuildContext context) {
return InkWell(
onTap: () async {
var res = await showDatePicker(
context: context,
initialDate: DateTime.now(),
firstDate: DateTime(2010, 1),
lastDate: DateTime(2101),
);
if (res != null) {
setState(
() {
widget.dateCTRL.text = DateEditor.DateFormat('y-M-d').format(res);
// sDateValue =
// DateEditor.DateFormat('y-M-d').format(
// dateTimeS,
// ); // baraye tavize makane gharar giri baraye api
},
);
}
},
child: Row(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
Expanded(
child: TextField(
enabled: false,
controller: widget.dateCTRL,
decoration: InputDecoration(
icon: Icon(
FontAwesomeIcons.calendarAlt,
size: 7 * widget._deviceBlockSize,
),
labelText: widget._label,
isDense: true,
contentPadding: EdgeInsets.only(bottom: 7, right: 3, left: 3),
// border: InputBorder.none,
),
style: TextStyle(
fontWeight: FontWeight.w700,
),
),
),
Icon(FontAwesomeIcons.angleDown)
],
),
);
}
}