onLeave с TextFormField - Flutter / Dart - PullRequest
0 голосов
/ 06 мая 2020

Я использую метод onChange в виджете TextFormField ... но есть ли функция onLeave в другом родительском виджете ... Я просмотрел GestureDetector, но у них его также нет

TextFormField(
     controller: _emailAddress_controller,
     keyboardType: TextInputType.emailAddress,
     validator: validateEmail,
     onChanged: (value) {  
        print(validateEmail(_emailAddress_controller.toString()));
      },
)

1 Ответ

1 голос
/ 06 мая 2020

У нас нет onLeave (), но у нас наверняка есть onFieldSubmitted () для TextFormField (). Он запускает некоторый код, когда пользователь нажимает кнопку отправки в правом углу клавиатуры.

Я предполагаю, что вы хотите переместить фокус на другое текстовое поле, когда пользователь покидает первое текстовое поле, чтобы вы могли использовать Узлы фокусировки.

FocusNode _secondFieldFocusNode = FocusNode(); //declaration



//on the first field's onFieldSubmitted Fn, let's put some code.
TextFormField(
 onFieldSubmitted: (value) {
  FocusScope.of(context).requestFocus(_secondFieldFocusNode),
 ),

//assign the focus node to second field
TextFormField(
 focusNode: _secondFieldFocusNode,
)
...