![](/img/trans.png)
[英]Flutter - How to implement a 'sloppy' back gesture to go back to previous screen?
[英]How to go back to the previous screen and reload all function of the first screen?
我有個問題。 如何返回上一個屏幕並重新加載第一個屏幕的所有功能?
在第1頁上,我有幾個函數可以從json和計算中加載所有數據。 當用戶轉到第2頁並向json插入時,當suer返回第1頁時,請重新加載第1頁上的所有功能。
我有如下功能:
Future<void> CountBalanced() {
ListDetailPaymentTransactions(global.strtransidtrans);
global.doubbalanced = global.inttotalpayment - global.doubtranstotaltrans;
print(global.inttotalpayment - global.doubtranstotaltrans);
}
目前,我找到了以下代碼:
Navigator.push(context, MaterialPageRoute(builder: (context) => CashPayment())).whenComplete(CountBalanced);
但是問題是,當用戶返回到第1頁時,功能一直在運行並且不會停止。
當我嘗試打印結果時,我注意到了。
有什么方法可以阻止它嗎? 還有沒有更好的方法可以重新加載第1頁上的所有功能?
要在導航時停止功能,請嘗試將其處置
@override
void dispose() {
super.dispose();
}
重新加載方法
@override
void didUpdateWidget(ClassName oldWidget) {
super.didUpdateWidget(oldWidget);
if (comparision) {
//your initState
}
}
有關更多信息, 請參見https://docs.flutter.io/flutter/widgets/State/didUpdateWidget.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.