日期选择器颤振中的问题
当我单击文本字段并选择出生日期时,它会显示 我的标签文本。
我不想在选择日期后显示标签文本。另外,键盘出现在我之前和之后 选择日期。
如何禁用出现的键盘并删除 在我的文本字段中显示时间?我只需要在选择之后显示一个日期。
DateTime _date = DateTime.now();
Future<Null> _selectDate(BuildContext) async {
DateTime? _datePicker = await showDatePicker(
context: context,
initialDate: _date,
firstDate: DateTime(1947),
lastDate: DateTime(2023),
initialDatePickerMode: DatePickerMode.year
);
if (_datePicker != null && _datePicker != _date) {
setState(() {
_date = _datePicker;
print(
_date.toString(),
);
});
}
}
TextFormField(
onTap: (){
setState(() {
_selectDate(context);
});
},
decoration: InputDecoration(hintText: (_date.toString()),
hintStyle: TextStyle(color:buttontext, fontSize: 14),
enabledBorder: UnderlineInputBorder(
borderSide: BorderSide(color: buttonblue),
),
focusedBorder: UnderlineInputBorder(
borderSide: BorderSide(color: buttonblue),
),
labelText: "Select Date of Birth",
labelStyle: TextStyle(fontSize: 15, color: buttontext),
),
style: TextStyle(color: buttontext),
),
When I click the Textfield and select the date of birth, it displays with
my label text.
I don't want to display my label text after the date has been selected. Also, the keyboard is appearing before and after I
select the date.
How can I disable the appearing keyboard and remove the
display time in my Textfield? I only need a date to display after the selection.
DateTime _date = DateTime.now();
Future<Null> _selectDate(BuildContext) async {
DateTime? _datePicker = await showDatePicker(
context: context,
initialDate: _date,
firstDate: DateTime(1947),
lastDate: DateTime(2023),
initialDatePickerMode: DatePickerMode.year
);
if (_datePicker != null && _datePicker != _date) {
setState(() {
_date = _datePicker;
print(
_date.toString(),
);
});
}
}
TextFormField(
onTap: (){
setState(() {
_selectDate(context);
});
},
decoration: InputDecoration(hintText: (_date.toString()),
hintStyle: TextStyle(color:buttontext, fontSize: 14),
enabledBorder: UnderlineInputBorder(
borderSide: BorderSide(color: buttonblue),
),
focusedBorder: UnderlineInputBorder(
borderSide: BorderSide(color: buttonblue),
),
labelText: "Select Date of Birth",
labelStyle: TextStyle(fontSize: 15, color: buttontext),
),
style: TextStyle(color: buttontext),
),
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试以下代码,希望对您有所帮助。添加
intl package
用于构建声明变量 的日期:
您的datepicker:
您的小部件:
您的结果 - &gt;
Try below code, hope its help to you. add
intl package
for date formatingDeclare variable:
your datePicker:
Your Widget:
Your result->
使用
dateformat()
use
DateFormat()