Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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
Android 如何访问MaterialPage路由传递的有状态小部件中的对象_Android_Dart_Flutter - Fatal编程技术网

Android 如何访问MaterialPage路由传递的有状态小部件中的对象

Android 如何访问MaterialPage路由传递的有状态小部件中的对象,android,dart,flutter,Android,Dart,Flutter,我在我的Flitter应用程序中有一个状态小部件作为详细信息页面: class MyTestPage extends StatefulWidget { final Foo foo; MyTestPage({ Key key, @required this.foo, }): super(key : key); @override MyTestPageState createState() => MyTestPageState(); }

我在我的Flitter应用程序中有一个状态小部件作为详细信息页面:

class MyTestPage extends StatefulWidget {
    final Foo foo;
    MyTestPage({
      Key key,
      @required this.foo, }): super(key : key);
    @override
    MyTestPageState createState() => MyTestPageState();
}

class MyTestPageState extends State<MyTestPage> {
    Foo foo;
    @override
    void initState(){...}
    @override
    Widget build(BuildContext context) {...}
}
类MyTestPage扩展StatefulWidget{
最后的富富;
MyTestPage({
关键点,
@必需this.foo,}):super(key:key);
@凌驾
MyTestPageState createState()=>MyTestPageState();
}
类MyTestPageState扩展了状态{
富富,;
@凌驾
void initState(){…}
@凌驾
小部件生成(BuildContext上下文){…}
}
我正在将列表项从我的主页小部件传递到
MyTestPage
。如何从
MyTestPageState
访问该变量(
foo


“我的家”小部件包含一个列表,单击
ListTile
可将您带到该
ListTile
的详细信息小部件。我使用的是一个
StatefulWidget
,因为我需要在详细信息屏幕上对Firebase数据库运行一个查询,我不知道还有什么其他方法可以做到这一点

状态
子类中,使用
小部件
引用
状态小部件

class MyTestPage extends StatefulWidget {
  final Foo foo;

  MyTestPage({
    Key key,
    this.foo,
  }) : super(key: key);

  @override
  MyTestPageState createState() => MyTestPageState();
}

class MyTestPageState extends State<MyTestPage> {
  @override
  void initState() {
    print(widget.foo); // this is the Foo in MyTestPage
  }

  @override
  Widget build(BuildContext context) {}
}
类MyTestPage扩展StatefulWidget{
最后的富富;
MyTestPage({
关键点,
这个.foo,,
}):super(key:key);
@凌驾
MyTestPageState createState()=>MyTestPageState();
}
类MyTestPageState扩展了状态{
@凌驾
void initState(){
print(widget.foo);//这是MyTestPage中的foo
}
@凌驾
小部件生成(BuildContext上下文){}
}