Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dart 颤振:将数据从TabBarView(StatefullWidgets)发送回主脚手架_Dart_Flutter - Fatal编程技术网

Dart 颤振:将数据从TabBarView(StatefullWidgets)发送回主脚手架

Dart 颤振:将数据从TabBarView(StatefullWidgets)发送回主脚手架,dart,flutter,Dart,Flutter,我想创建一个带有选项卡的应用程序来获取用户输入。问题是,不同的选项卡获得不同的输入,但我必须收集数据库的输入。我的想法是,主Scaffhold从所有选项卡收集输入并将其写入数据库!我的问题是,我不知道如何将数据从选项卡(另一个文件中的statefullWidget)发送到父类(Scaffold)或从那里运行函数 请帮助我,对不起我的英语不好 Jonas您可以传递一个函数,该函数可以随时调用 小例子 MamaBear类 。。。 类_MamaBear扩展状态{ 虚空饥饿(字符串婴儿){ 打印($ba

我想创建一个带有选项卡的应用程序来获取用户输入。问题是,不同的选项卡获得不同的输入,但我必须收集数据库的输入。我的想法是,主Scaffhold从所有选项卡收集输入并将其写入数据库!我的问题是,我不知道如何将数据从选项卡(另一个文件中的statefullWidget)发送到父类(Scaffold)或从那里运行函数

请帮助我,对不起我的英语不好


Jonas

您可以传递一个
函数,该函数可以随时调用

小例子 MamaBear类

。。。
类_MamaBear扩展状态{
虚空饥饿(字符串婴儿){
打印($babyBear饿了);
}
@凌驾
小部件构建(构建上下文){
返回脚手架(
主体:容器(
子项:列(子项:[
婴儿(
“马克”,
(宝宝){
饥饿(婴儿);
},
)])));}
婴儿班

class BabyBear扩展了StatefulWidget{
最终字符串babybename;
最终作用于承载作用;
BabyBear(this.babyBearName,this.onBearAction);
@凌驾
_BabyBear createState()=>BabyBear();
}
类BabyBear扩展了状态{
@凌驾
小部件构建(构建上下文){
回程卡(
孩子:升起按钮(
孩子:短信(“妈妈,我饿了”),
已按下:(){
widget.onBearAction(widget.babybename);
}),
);
}

}

您可以传递一个
函数,该函数可以随时调用

小例子 MamaBear类

。。。
类_MamaBear扩展状态{
虚空饥饿(字符串婴儿){
打印($babyBear饿了);
}
@凌驾
小部件构建(构建上下文){
返回脚手架(
主体:容器(
子项:列(子项:[
婴儿(
“马克”,
(宝宝){
饥饿(婴儿);
},
)])));}
婴儿班

class BabyBear扩展了StatefulWidget{
最终字符串babybename;
最终作用于承载作用;
BabyBear(this.babyBearName,this.onBearAction);
@凌驾
_BabyBear createState()=>BabyBear();
}
类BabyBear扩展了状态{
@凌驾
小部件构建(构建上下文){
回程卡(
孩子:升起按钮(
孩子:短信(“妈妈,我饿了”),
已按下:(){
widget.onBearAction(widget.babybename);
}),
);
}
}

...

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);
          }),
    );
  }