flutter - 如何使用 Flutter TextFormField 设置状态()
问题描述
validator: (value) {
if (value.isEmpty) {
_casing.depth = 0;
} else if (double.tryParse(value) != null) {
// setState(() {
_casing.depth = double.tryParse(value);
// });
} else {
_casing.depth = 0;
return kTextFieldError;
}
return null;
},
这将返回一个错误,指出当前执行此操作时无法设置状态。我需要的是作为用户输入(或通过单击确定或点击自动隐藏键盘的任何位置完成),我想使用输入值来计算父小部件中的数字
解决方案
你可以使用的onChanged
属性TextFormField
onChanged:(value){
if (value.isEmpty) {
_casing.depth = 0;
} else if (double.tryParse(value) != null) {
// setState(() {
_casing.depth = double.tryParse(value);
// });
} else {
_casing.depth = 0;
return kTextFieldError;
}
}
推荐阅读
- scala - Bazel 错误:类型“java_common”没有方法 create_provider()
- reactjs - 如何在嵌套的 mobx 商店中使用反应上下文?
- encoding - 字符编码之谜(对我来说完美无缺,但不幸的是不是所有人)
- c# - 使用 RestSharp 收听文本/事件流
- vb.net - 我有这个倒数计时器,我希望它从变量中设置的数字开始
- python - 使用 matplotlib 制作交互式 svg
- c++ - 如何在不存储的情况下读取并立即丢弃 C++ 中的某些数据?
- android-studio - 如何在 Android Studio/Intellij-idea 的工具栏中添加自定义命令(操作)按钮以执行 bash?
- javascript - 从 VueJS 中的 API 获取后更新 DOM
- python - 如何以漂亮的方式显示包含字典的列表?