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 { @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: [ 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) ], ), ); } }