【发布时间】:2023-01-25 03:27:39
【问题描述】:
嗨,我是新手。
我正在使用 Provider 并希望使用从中获取的数据作为文本字段的初始值。所以我决定将控制器定义为可空值,并将文本放入initState()。
这是代码。
...
TextEditingController? _lastNameController;
TextEditingController? _firstNameController;
@override
void initState() {
super.initState();
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
MyProvider myProvider = Provider.of(context, listen : false);
_lastNameController = TextEditingController(text : myProvider.lastName);
_firstNameController = TextEditingController(text : myProvider.firstName);
});
}
@override
Widget build(BuildContext context) {
return Row(
children : [
// this is an extension of TextField
MyTextField(controller : _lastNameController!, hintText : 'Last Name'),
const Spacer(),
MyTextField(controller : _firstNameController!, hintText : 'First Name')
...
我得到了一个例外Null check operator used on a null value。
如果您有任何解决方案,请告诉我。
谢谢,
【问题讨论】:
标签: flutter