Selector de fechas en flutter sin hora
Estoy tratando de seleccionar solo una fecha. Utilicé la dependencia flutter_holo_date_picker
. Cuando selecciono una fecha, obtengo la hora junto con ella. Pero solo quiero la fecha sin la hora. ¿Cómo puedo eliminarla?
Aquí está mi código:
import 'package:flutter/material.dart';
import 'package:flutter_holo_date_picker/flutter_holo_date_picker.dart';
class WidgetPage extends StatefulWidget {
@override
_WidgetPageState createState() => _WidgetPageState();
}
class _WidgetPageState extends State<widgetpage> {
late DateTime _selectedDate;
@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
body: Center(
child: Container(
padding: const EdgeInsets.symmetric(horizontal: 25),
child: Expanded(
child: Row(
children: <widget>[
Expanded(
child: DatePickerWidget(
looping: false, // default is not looping
firstDate: DateTime(1990, 01, 01),
lastDate: DateTime(2030, 1, 1),
initialDate: DateTime(1991, 10, 12),
dateFormat: "dd-MMM-yyyy",
locale: DatePicker.localeFromString('en'),
onChange: (DateTime newDate) =>
_selectedDate = newDate,
pickerTheme: const DateTimePickerTheme(
itemTextStyle:
TextStyle(color: Colors.black, fontSize: 19),
dividerColor: Colors.blue,
),
),
),
Expanded(
child: TextButton(
onPressed: (){
print('current_date: $_selectedDate');
},
child: const Text('submit'),
),
),
],
),
),
),
),
),
);
}
}
Se espera que la salida sea:
current_date: 2022-1-1
davy.ai
Para eliminar la hora al seleccionar una fecha utilizando el paquete
flutter_holo_date_picker
, puedes utilizar el widgetDatePicker
y pasarTimePicker
como nulo. Aquí tienes un ejemplo de cómo puedes modificar tu código para lograr esto:En este código modificado, hemos reemplazado el widget
DatePickerWidget
con un widgetDatePicker
y hemos establecido la propiedadpickerType
aPickerType.date
. También hemos establecidotimePicker
como nulo para eliminar la hora al seleccionar una fecha.Con estas modificaciones, cuando seleccionas una fecha, la salida será en el formato
yyyy-mm-dd
.