Dart 返回到上一个活动时如何返回数据?
我有这样的代码的屏幕活动Dart 返回到上一个活动时如何返回数据?,dart,flutter,Dart,Flutter,我有这样的代码的屏幕活动 onTap: () { Navigator.of(context).pop('lorem ipsum'); } 因此,当我按下按钮(onTap),屏幕将返回到上一个活动并显示“lorem ipsum”的文本,我如何才能做到这一点 首先,在颤振中,未使用活动术语。一切都是一个小部件 当您按下此屏幕时,必须按下MaterialRouteWidget,其参数应与pop的结果(在您的案例中为字符串)相同,如下所示- new RaisedButton(onPressed
onTap: () {
Navigator.of(context).pop('lorem ipsum');
}
因此,当我按下按钮
(onTap)
,屏幕将返回到上一个活动并显示“lorem ipsum”的文本,我如何才能做到这一点 首先,在颤振中,未使用活动
术语。一切都是一个小部件
当您按下此屏幕时,必须按下MaterialRouteWidget
,其参数应与pop的结果(在您的案例中为字符串)相同,如下所示-
new RaisedButton(onPressed: ()async{
String value = await Navigator.push(context, new MaterialPageRoute<String>(
builder: (BuildContext context) {
return new Center(
child: new GestureDetector(
child: new Text('OK'),
onTap: () { Navigator.pop(context, "lorem ipsum"); }
),
);
}
)
);
print(value);
},
child: new Text("Return"),)
newraisedbutton(onPressed:()异步{
String value=await Navigator.push(上下文,new MaterialPageRoute(
生成器:(BuildContext上下文){
返回新中心(
儿童:新的手势检测器(
子项:新文本('OK'),
onTap:(){Navigator.pop(上下文,“lorem ipsum”);}
),
);
}
)
);
印刷品(价值);
},
子项:新文本(“返回”),)
要正确理解这一点,请首先在颤振中说明,
活动中未使用术语。一切都是一个小部件
当您按下此屏幕时,必须按下MaterialRouteWidget
,其参数应与pop的结果(在您的案例中为字符串)相同,如下所示-
new RaisedButton(onPressed: ()async{
String value = await Navigator.push(context, new MaterialPageRoute<String>(
builder: (BuildContext context) {
return new Center(
child: new GestureDetector(
child: new Text('OK'),
onTap: () { Navigator.pop(context, "lorem ipsum"); }
),
);
}
)
);
print(value);
},
child: new Text("Return"),)
newraisedbutton(onPressed:()异步{
String value=await Navigator.push(上下文,new MaterialPageRoute(
生成器:(BuildContext上下文){
返回新中心(
儿童:新的手势检测器(
子项:新文本('OK'),
onTap:(){Navigator.pop(上下文,“lorem ipsum”);}
),
);
}
)
);
印刷品(价值);
},
子项:新文本(“返回”),)
要正确理解这一点,请通读。您可以使用并添加文本作为参数
Navigator.popAndPushNamed(context, '/yourRoute', arguments: 'your text' );
您可以使用和添加文本作为参数
Navigator.popAndPushNamed(context, '/yourRoute', arguments: 'your text' );
在您的第一个屏幕中使用此选项(当您想进入屏幕2时)
在第二个屏幕中,当您返回到第一个屏幕时,使用此选项
Navigator.pop(context, 'lorem ipsum');
在您的第一个屏幕中使用此选项(当您想进入屏幕2时)
在第二个屏幕中,当您返回到第一个屏幕时,使用此选项
Navigator.pop(context, 'lorem ipsum');
像这样试试
1)在第一页(转到第二页/活动)
这是一个很好的示例,说明了如何将值传递给上一个活动。请这样尝试
1)在第一页(转到第二页/活动)
这是一个很好的示例,说明了如何将值传递给上一个活动。有一个包,您可以传递一些参数,如url参数
定义(“/users/:id”,处理程序:usersHandler) 有一个包,您可以传递一些参数,如url参数
定义(“/users/:id”,处理程序:usersHandler) 基本上,如果您需要从B页到a页的结果。。。你需要在A页上看到它
例如
如果有一个按钮转到B页,则需要下一个代码:
String informationFromPageB = await Navigator.push(
context,
MaterialPageRoute(
builder: (_) => PageB(),
);
然后在B页中,只需发送参数
Navigator.pop(context, "theInformationHere");
这里有一个例子:
我还做了另一个小例子:基本上如果你需要从B页到a页的结果。。。你需要在A页上看到它
例如
如果有一个按钮转到B页,则需要下一个代码:
String informationFromPageB = await Navigator.push(
context,
MaterialPageRoute(
builder: (_) => PageB(),
);
然后在B页中,只需发送参数
Navigator.pop(context, "theInformationHere");
这里有一个例子:
我还做了另一个小例子:我必须把Navigator.push(..)放在课堂上_Page1扩展状态或?..Navigator.push()应该在屏幕1中使用,当你进入屏幕2时,也许你正在使用一个按钮。如果没有,告诉我你如何导航到屏幕2?我使用它,返回新的手势检测器(onTap:()async{Navigator.pop(context,'lorem ipsum');})所以,上一个屏幕上的文本将发生变化没有,我问你如何进入第二个屏幕,在那里使用你提到的代码?我必须在哪里放置Navigator.push(....?在类_Page1扩展状态或?..Navigator.push()当您转到屏幕2时,应在屏幕1中使用
,可能您正在为此使用一个按钮。如果没有,请告诉我如何导航到屏幕2?我使用此选项,返回新的GestureDetector(onTap:()async{Navigator.pop(上下文,'lorem ipsum');})所以,上一个屏幕上的文本将发生变化没有,我问你如何进入第二个屏幕,在那里使用你提到的代码?