gpt4 book ai didi

flutter - 尝试从另一个小部件中打印文本字段的文本,并始终在flutter中打印为空(仅I/flutter(9049):)

转载 作者:行者123 更新时间:2023-12-03 04:59:41 26 4
gpt4 key购买 nike

TextEditingController _name = TextEditingController();

Future<String> randomFun() async{
return _name.text;
}

在另一类中:
print(await(theFirstClass.randomFun()));

而且它总是打印
I / flutter (9049):

我在Textfield中写过,它必须具有文本值。

我在同一类打印
和工作
从另一个类打印时出现此问题,看不到_name的值,我不知道为什么。

更多解释:
我没有打印TextField的文本
通过另一个小部件中的按钮

如果我为_name添加了静态功能,则可以使用
像这样 static TextEditingController _name = TextEditingController();
但是我需要没有静态的方法

我的代码是这样的:

一页中有2个有状态小部件
第一个小部件FirstClass
第二个小部件SecondClass
头等舱
class FirstClassextends State<First> {
...
TextEditingController_name = TextEditingController();

Future<String> randomFun() async{
return _name.text;
}
...
TextField(
decoration: InputDecoration(labelText: 'Enter your name'),
controller: _name,
),
...
}

第二类
class secondClassextends State<second> {
...
FirstClass firstClass = FirstClass();
...
IconButton(
icon: Icon(Icons.person, color: Colors.white,),
onPressed: ()async{
print(await(firstClass.randomFun()));
}
),

再一次,我需要通过按另一个小部件中的按钮来打印/获取TextField的文本。

最佳答案

改变这个

Future<String> randomFun() async{
return _name.text;
}


Future<String> randomFun() async {
return Future.value(_name.text);
}

关于flutter - 尝试从另一个小部件中打印文本字段的文本,并始终在flutter中打印为空(仅I/flutter(9049):),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59785524/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com