Flutter 颤振从父级调用子状态方法
我有一个包含appBar的父窗口小部件。在应用程序栏上,我放置了一个保存按钮。现在在父窗口小部件的Flutter 颤振从父级调用子状态方法,flutter,widget,Flutter,Widget,我有一个包含appBar的父窗口小部件。在应用程序栏上,我放置了一个保存按钮。现在在父窗口小部件的build(BuildContext)方法中,我调用了一个子窗口小部件,它显示输入字段 当用户在字段中提供一些输入并按下保存按钮时,我想保存子窗口小部件中的数据 所以问题是如何从父窗口小部件调用子窗口小部件的方法 我已经创建了Child的obj,并从父级调用了该方法,但它不起作用,因为函数细节处于Child的状态 家长: class AddRecipe extends StatelessWidget
build(BuildContext)
方法中,我调用了一个子窗口小部件,它显示输入字段
当用户在字段中提供一些输入并按下保存按钮时,我想保存子窗口小部件中的数据
所以问题是如何从父窗口小部件调用子窗口小部件的方法
我已经创建了Child的obj,并从父级调用了该方法,但它不起作用,因为函数细节处于Child的状态
家长:
class AddRecipe extends StatelessWidget {
AddRecipeInput obj;
void save() {
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
actions: <Widget>[
IconButton(
icon: Icon(
Icons.save
),
onPressed: save, // Save action on which i want to trigger child
)
],
),
body: Container(
child: Column(
children: <Widget>[
Text('Add a new recipe to help other foodies like you!!'),
obj = AddRecipeInput()
],
),
)),
}
class AddRecipeInput extends StatefulWidget {
@override
_AddRecipeInputState createState() => _AddRecipeInputState();
}
class _AddRecipeInputState extends State<AddRecipeInput> {
void prepareAddrecipe() {}
}
class AddRecipe扩展了无状态小部件{
添加RecipeInput对象;
作废保存(){
}
@凌驾
小部件构建(构建上下文){
返回脚手架(
appBar:appBar(
行动:[
图标按钮(
图标:图标(
图标。保存
),
onPressed:save,//保存要触发其子对象的操作
)
],
),
主体:容器(
子:列(
儿童:[
Text('添加一个新的食谱来帮助像你这样的美食家!!'),
obj=AddRecipeInput()
],
),
)),
}
子项:
class AddRecipe extends StatelessWidget {
AddRecipeInput obj;
void save() {
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
actions: <Widget>[
IconButton(
icon: Icon(
Icons.save
),
onPressed: save, // Save action on which i want to trigger child
)
],
),
body: Container(
child: Column(
children: <Widget>[
Text('Add a new recipe to help other foodies like you!!'),
obj = AddRecipeInput()
],
),
)),
}
class AddRecipeInput extends StatefulWidget {
@override
_AddRecipeInputState createState() => _AddRecipeInputState();
}
class _AddRecipeInputState extends State<AddRecipeInput> {
void prepareAddrecipe() {}
}
类AddRecipeInput扩展StatefulWidget{
@凌驾
_AddRecipeInputState createState()=>\u AddRecipeInputState();
}
类_AddRecipeInputState扩展状态{
void prepareAddrecipe(){}
}
如上面的例子所示,我想调用
AddRecipeInput
的prepareAddrecipe
,在save
函数的按下事件中,从AddRecipe发布您的代码,因为很难理解您想要做什么achieve@pskink我添加了示例代码最简单的方法是使用ScopedModel
/ 提供程序
或类似程序包处理您的状态的最佳方法是提供程序。此中间链接将帮助您使用提供程序发布您的代码,因为您很难理解要发布的内容achieve@pskink我已经添加了示例代码最简单的方法是使用ScopedModel
/提供程序
或类似的包这是获取ha的最佳方法ndle您的状态是提供程序。此媒体链接将帮助您使用提供程序