flutter - 颤振键盘类型:TextInputType.number 不适用于 TextEditingController
问题描述
在 Flutter TextFeild 中使用 keyboardType:TextInputType.number 和 TextEditingController 类型的控制器时,无法直接使用数字键盘输入数字。首先,我必须按下任何特殊符号,例如 '.','-' ,然后输入数字。
final expenseAmount = TextEditingController();
TextField(
decoration: InputDecoration(
labelText: "Amount",
),
controller: expenseAmount,
keyboardType: TextInputType.number,
),
解决方案
final TextEditingController price = new TextEditingController();
TextFormField(
controller: price,
keyboardType: TextInputType.number,
decoration: InputDecoration(
border: OutlineInputBorder(),
labelText: 'Amount',
hintText: 'MRP',
),
textInputAction: TextInputAction.done,
),
其他解决方案:您添加包:import 'package:flutter/services.dart';
TextFormField(
keyboardType: TextInputType.number,
inputFormatters: [
FilteringTextInputFormatter.allow(
RegExp(r'[0-9]'),
),
],
decoration: InputDecoration(
border: OutlineInputBorder(),
labelText: 'Price',
hintText: '0.00',
),
),
参考FilteringTextInputFormatter
这里
推荐阅读
- java - Maven - 尽管存在,但在中央存储库中找不到杰克逊工件?
- python - 如何使用plotly(Python)将鼠标悬停在具有相同x轴的多个图表上?
- python - 在 matplotlib.pcolor() 中使用 x、y 数组作为像素位置和 z 作为颜色值时的参数数量错误
- python - 如果字段值在外部列表中,Django 注释布尔值
- azure - 如何使用 Azure App 代表用户发送电子邮件?
- javascript - 单击第一个链接会触发对其余链接的单击
- tensorflow - 优化二元焦点损失和骰子损失
- kubernetes - Helm Charts 在不同的命名空间中创建秘密
- react-native - React Native 中的嵌套堆栈导航器和抽屉导航器
- powershell - Powershell - 带参数的进程列表