我是 Flutter 的新手,并且希望在当前 TextFormField 达到它的 maxLength 时从一个 TextFormField 移动到另一个,而无需按 Enter。这意味着我可以在小时 TextFormField 上输入 2 位数字,而聚焦的 TextFormField 将移动到分钟 TextFormField 等等。
我曾尝试使用 nextFocus(),但是这仅在按 Enter 时有效。
小时输入的示例小部件:
Widget _buildHH(){
return Theme(
data: Theme.of(context).copyWith(primaryColor: Colors.orange),
child: Expanded(
child:
TextFormField(
maxLength: 2,
cursorColor: Colors.orange,
style: TextStyle(color: Colors.orange),
decoration: InputDecoration(
border: OutlineInputBorder(),
labelText: 'HH'
),
onEditingComplete: () => FocusScope.of(context).nextFocus(),
keyboardType: TextInputType.number,
validator: (String value){
return null;
},
onSaved: (String value){
_HH = value;
},
),
)
);
}