如何返回并刷新Flutter中的上一页?
我有一个主页,当单击该主页时,我会通过导航进入另一个页面,进行一些操作,然后按返回按钮,这会将我带回到该主页。但是问题是主页没有刷新。
当我按下返回按钮并刷新主页时,是否可以重新加载页面?
回答:
当您导航回首页时,可以触发API调用,例如此
class PageOne extends StatefulWidget { @override
_PageOneState createState() => new _PageOneState();
}
class _PageOneState extends State<PageOne> {
_getRequests()async{
}
@override
Widget build(BuildContext context) {
return new Scaffold(
body: new Center(
child: new RaisedButton(onPressed: ()=>
Navigator.of(context).push(new MaterialPageRoute(builder: (_)=>new PageTwo()),)
.then((val)=>val?_getRequests():null),
),
));
}
}
class PageTwo extends StatelessWidget {
@override
Widget build(BuildContext context) {
//somewhere
Navigator.pop(context,true);
}
}
或者,如果API经常更新,则可以使用流,新数据将在您的内部自动更新 ListView
例如使用firebase,我们可以做到这一点
stream: FirebaseDatabase.instance.reference().child( "profiles").onValue
而且,只要您更改数据库中的某些内容(例如,从“编辑个人资料”页面进行更改),该内容就会反映在您的个人资料页面上。在这种情况下,这仅是可能的,因为我正在使用onValue
它将继续监听所有更改并代表您进行更新。
以上是 如何返回并刷新Flutter中的上一页? 的全部内容, 来源链接: utcz.com/qa/436028.html