我已经在屏幕B中更新了我的Sqlite表,并且还希望在屏幕A中反映该更改。 因此,当从屏幕B>屏幕A弹出时,没有任何更新。 在Android中,我们具有onResume()来使更改反映在活动A中。
我已经使用了小部件绑定观察器,但是如果应用程序背景为前景,则可以使用。
Navigator.of(context).pop();
答案 0 :(得分:0)
您可以等待Navigator.push,当调用pop时,将在Navigator.push下面调用任何内容。例如:
await Navigator.push(SomePage());
/// This will be called after SomePage cals Navigator.pop();
doSomething();
答案 1 :(得分:0)
您可以从 second page
返回这样的数据:
// Second Page
Navigator.pop(context, 'result');
然后通过 first page
上的以下代码,您可以午餐 second page
并等待从它返回并获取数据。
// First Page
var result = await Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondPage()),
);
答案 2 :(得分:-1)
使用颤振await Navigator.push().then((value) {”Triggered after pop back in here"}
现在您正在启动第二个屏幕并等待结果
Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondRoute()),
).then((value) {
// Triggered after pop back in here
});