【发布时间】:2019-07-09 04:45:49
【问题描述】:
我试图通过访问状态类的方法来查看另一个类的文本字段数据。当我单击一个按钮时,我想在另一个类中获取文本字段值。
我尝试调用应该返回字符串的方法,但是当我尝试从其他类访问它时没有得到任何值。
class TitleWidget extends StatefulWidget{
final IncidentComponent data;
String titleVal;
TitleWidget(this.data);
@override
TitleWidgetState createState() => TitleWidgetState();
}
class TitleWidgetState extends State<TitleWidget>{
final titleController = TextEditingController();
titleTextValue() {
print("title text field: ${titleController.text}");
return titleController.text;
}
@override
void initState() {
super.initState();
titleController.addListener(titleTextValue);
}
@override
Widget build(BuildContext context) {
return TextField(
controller: titleController);
}
}
我试图访问上面的方法来获取另一个类中的字符串。
FloatingActionButton.extended(
label: Text("Complete Report",
onPressed: () { print('title is ' + TitleWidgetState().titleTextValue()); }
)
当我按下其他类的 FAB 按钮时,我一直在期待文本字段的值。但是我从其他类方法中一无所获。 但是 titleTextValue() 方法的 print 语句会打印文本字段的正确值。
【问题讨论】:
-
如果您想尝试using Singletons,请在此处查看我的答案
标签: flutter