【发布时间】:2020-01-23 09:10:02
【问题描述】:
我的应用程序是基于表单的,它涉及很多文本字段。所有字段都共享相同的样式,并且表单页面变得很长,因此我决定创建一个widget 并在需要时调用它。
我用这个代码创建了一个文件show_text_field.dart:
showTextField(String label, var variable){
return TextFormField(
keyboardType: TextInputType.text,
onSaved: (val) => variable = val,
decoration: InputDecoration(
labelText: label,
contentPadding: EdgeInsets.fromLTRB(15.0, 15.0, 15.0, 15.0),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(5.0),
)),
validator: (value) {
if (value.isEmpty) {
return '$label cannot be empty';
} else {
return null;
}
},
);
}
它工作正常,但我无法从该字段中检索值。
问题:
- 如何从
onSaved事件中获取价值? - 这是正确的方法吗?
- 创建可重复使用的
InputDecoration小部件是否比重复使用整个小部件更好? - 如果方法正确,那么有没有办法扩展/修改字段验证器?
【问题讨论】: