我正在使用flutter,我想在TextFormField中动态设置文本(字符串值),这意味着可以通过按按钮来设置值。
答案 0 :(得分:1)
您可以使用 StatefulWidget
来调整 if (!this.state.loadedpost || this.state.loadedpost.id !== this.props.id) {
// ...
}
中的initialValue
property。
for(int i=0;i<100;i++)
makeHTTP();
在 TextFormField
中,我为 class TextFieldChanger extends StatefulWidget {
@override
_TextFieldChangerState createState() => _TextFieldChangerState();
}
class _TextFieldChangerState extends State<TextFieldChanger> {
String presetText;
void _onPressed() {
setState(() {
presetText = 'updated text';
});
}
@override
Widget build(BuildContext context) => Column(children: [
TextFormField(initialValue: presetText),
RawMaterialButton(onPressed: _onPressed),
]);
}
分配了一个新值,并且 setState
因presetText
而被调用(使用更新 build
)。
答案 1 :(得分:0)
使用TextEditingController。然后将其分配给TextFormField,然后利用控制器从所需位置分配新数据。如果要为初始数据分配一些初始值,请在initState()函数中将其用于有状态窗口小部件。 _textEditingController.text =“ 1”;