我已经通过 Controller 在动态textfield
中设置了值,但它不允许我编辑值,只有光标在输入的文本周围移动。
我尝试过以这种方式设置值
shippingNameController.value = shippingNameController.value.copyWith(text:name);
但在上述解决方案之前,我尝试过此操作,我将动态文本字段命名为“帐单名称”,并且我想更新送货名称中帐单名称的值。
shippingNameController.text=name;
当我使用它时,它不起作用,它在文本字段的开头显示光标并且不更新值。
new TextField(
style: TextStyle(fontFamily: 'semibold',color: MyColors.colorPrimary),
keyboardType:field.type=='STR'||field.type=='EMAIL'? TextInputType.text:TextInputType.number,
textInputAction: TextInputAction.done,
decoration: InputDecoration(contentPadding:EdgeInsets.all(8.0),
hintStyle: TextStyle(fontFamily: 'semibold',color: MyColors.colorPrimary),
border: InputBorder.none,),
controller: shippingNameController,
onChanged: (String val) {
enteredValue(field,val);
setState(() {
shippingNameController.text = val;
sShppingfieldList[p].fieldvalue=val;
});
},),
最佳答案
像这样的东西应该有效:
child: TextField(
keyboardType: TextInputType.text,
onChanged: (name) {
setState((){
shippingNameController.text = name;
});
},
),
关于android - 文本字段不在 flutter 中编辑文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55759634/