Flutter 区分多个小部件实例的颤振
我正在编写一个应用程序,其中我正在使用一个自定义小部件的多个实例,我想调用一个特定实例的方法 代码示例:Flutter 区分多个小部件实例的颤振,flutter,dart,Flutter,Dart,我正在编写一个应用程序,其中我正在使用一个自定义小部件的多个实例,我想调用一个特定实例的方法 代码示例: Widget build(BuildContext context) { return Scaffold( drawer: new DrawerOnly(storage: CounterStorage()), appBar: AppBar(), body: Stack( c
Widget build(BuildContext context) {
return Scaffold(
drawer: new DrawerOnly(storage: CounterStorage()),
appBar: AppBar(),
body: Stack(
children: <Widget>[
new Center(
child: new Object3D(
),
),
new Positioned(
top: 20,
left: 0,
child: new Object3D(
),
),
new Positioned(
top: 20,
left: 100,
child: new Object3D(
),
),
new Positioned(
top: 120,
left: 0,
child: new Object3D(
),
),
],
)
);
}
mymethod() {
//call first Object3D's method from here
}
}
小部件构建(构建上下文){
返回脚手架(
抽屉:新抽屉(存储:CounterStorage()),
appBar:appBar(),
主体:堆栈(
儿童:[
新中心(
子对象:新的Object3D(
),
),
新定位(
前20名,
左:0,,
子对象:新的Object3D(
),
),
新定位(
前20名,
左:100,,
子对象:新的Object3D(
),
),
新定位(
排名:120,
左:0,,
子对象:新的Object3D(
),
),
],
)
);
}
mymethod(){
//从这里调用第一个Object3D的方法
}
}
如何从其父对象调用第一个Object3D的方法?将子对象存储在如下列表中:
final object3Ds=List.generate(4,()=>Object3D());
现在,将该引用存储在父级中,然后可以在build
方法中传递该列表的元素:
。。。
堆叠(
儿童:[
定位(
子对象:object3Ds[0],
...
最后,您现在可以使用创建的列表访问对象:
object3Ds[0].callMethod();
您将孩子存储在如下列表中:
final object3Ds=List.generate(4,()=>Object3D());
现在,将该引用存储在父级中,然后可以在build
方法中传递该列表的元素:
。。。
堆叠(
儿童:[
定位(
子对象:object3Ds[0],
...
最后,您现在可以使用创建的列表访问对象:
object3Ds[0].callMethod();
您需要从父窗口小部件调用方法?为什么?您需要从父窗口小部件调用方法?为什么?