【发布时间】:2018-06-24 14:39:53
【问题描述】:
我想创建一个带有选项卡的应用程序来获取用户输入。问题是,不同的选项卡得到不同的输入,但我必须收集数据库的输入。我的想法是,主脚手架收集所有选项卡的输入并将其写入数据库!我的问题是我不知道将数据从选项卡(其他文件中的 statefullWidget)发送到父类(脚手架)或从那里运行函数!
请帮助我,对不起我的英语不好!
乔纳斯
【问题讨论】:
我想创建一个带有选项卡的应用程序来获取用户输入。问题是,不同的选项卡得到不同的输入,但我必须收集数据库的输入。我的想法是,主脚手架收集所有选项卡的输入并将其写入数据库!我的问题是我不知道将数据从选项卡(其他文件中的 statefullWidget)发送到父类(脚手架)或从那里运行函数!
请帮助我,对不起我的英语不好!
乔纳斯
【问题讨论】:
你可以传递一个Function,你可以随时调用它。
妈妈熊类
...
class _MamaBear extends State<MamaBear> {
void hungryBear(String babyBear) {
print("$babyBear is hungry");
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
child: Column(children: <Widget>[
BabyBear(
"Mark",
(babyBear) {
hungryBear(babyBear);
},
)])));}
熊宝宝类
class BabyBear extends StatefulWidget {
final String babyBearName;
final Function onBearAction;
BabyBear(this.babyBearName, this.onBearAction);
@override
_BabyBear createState() => _BabyBear();
}
class _BabyBear extends State<BabyBear> {
@override
Widget build(BuildContext context) {
return Card(
child: RaisedButton(
child: Text("Mama I'm hungry"),
onPressed: () {
widget.onBearAction(widget.babyBearName);
}),
);
}
}
【讨论】: