как изменить флаттер входного формата showDatePicker - PullRequest
0 голосов
/ 28 мая 2020

Я использую функцию showDatePicker, чтобы выбрать дату из диалогового окна Календарь. Он показывает значок редактирования вверху справа (см. Img 1), чтобы перейти в режим ввода, где пользователь может ввести дату в виде текста (см. Img 2). Проблема заключается в формате ввода, я хочу, чтобы ввод текстового редактора соответствовал этому формат гггг-мм-дд. Проблема в том, что в начале он показывает мне дату, например, гггг-мм-дд, но когда я пытаюсь удалить первое число, оно автоматически меняется на этот формат мм / дд / гггг.

Как установить формат ввода гггг-мм-дд. Если showDatePicker не поддерживает это с языком swedi sh, то как навсегда скрыть значок редактирования в правом верхнем углу. Помогите мне спасибо

img 1 img 1

img 2 img 2

Вот мой код

  DateTime selectedDate = DateTime.now();
  String date = DateFormat("yyyy-MM-dd").format(DateTime.now()); 
...
FlatButton(
         onPressed: ()async {

           final DateTime picked = await showDatePicker(
               locale: const Locale('sv'), // Swedish calander
               context: context,
               initialDate: selectedDate,
               firstDate: DateTime(1970, 8),
               lastDate: DateTime(2101));

           if (picked != null && picked != selectedDate) {
             setState(() {
               selectedDate = picked;
               String Onlydate = new DateFormat("yyyy-MM-dd").format(picked); 

               date = '$Onlydate';


             });
           }
         },
         child: Row(
           children: <Widget>[
             Text(' * $date'),
           ],
         ),
       );`
...