У меня проблема с клавиатурой на iOS. Всякий раз, когда я выбираю другое поле формы, клавиатура сохраняет прежнее состояние. Под этим я подразумеваю, что, если мой последний ввод в предыдущем поле был числом, всякий раз, когда я нажимаю на другое поле, клавиатура остается с тем же вводом числа, тогда как при Android она сбрасывается. Я указал в обоих полях Keyboard Textypt.Text TextInputType.text.
import 'package:flutter/material.dart';
class FormView extends StatefulWidget {
@override
_FormViewState createState() => _FormViewState();
}
class _FormViewState extends State<FormView> {
final _formKey = GlobalKey<FormState>();
FocusNode firstNode = FocusNode();
FocusNode secondNode = FocusNode();
FocusNode thirdNode = FocusNode();
@override
Widget build(BuildContext context) {
return Form(
key: _formKey,
child: Column(
children: <Widget>[
TextFormField(
focusNode: firstNode,
keyboardType: TextInputType.text,
),
TextFormField(
focusNode: secondNode,
keyboardType: TextInputType.text,
),
TextFormField(
focusNode: thirdNode,
keyboardType: TextInputType.text,
),
],
),
);
}
}
Я также попытался onFieldSubmitted, где я расфокусирую фокус текущего поля и запрашиваю следующий, в этом случае он работает нормально, как и предполагалось и сбрасывает клавиатуру. Однако, если я делаю то же самое на onTap, при переключении между полями это не меняет состояние.