I would like to present an AdWords interstitial before the user returns to the previous page. How can I do this when the return button is pressed?
Asked
Active
Viewed 2.9k times
1 Answers
54
I think you can make use of WillPopScope
widget. You can pass a callback function which will be called when the view is about pop. Just do whatever tasks to be completed before pop and then return true.
Example:
Future<bool> _willPopCallback() async {
// await showDialog or Show add banners or whatever
// then
return true; // return true if the route to be popped
}
//then pass the callback to WillPopScope
new WillPopScope(child: new Scaffold(), onWillPop: _willPopCallback)

starball
- 20,030
- 7
- 43
- 238

Hemanth Raj
- 32,555
- 10
- 92
- 82
-
3is there any way to keep the swipe to pop functionality when using a WillPopScope? Mine stops working when I add it. I am trying to use it so that when someone swipes to pop, the keyboard will dismiss, but I have yet to figure it out. I tried it with a Pan Gesture but that works on swipe everywhere but the edge where swipe to pop happens. – tapizquent Jul 27 '19 at 04:48
-
The argument type 'Future
' can't be assigned to the parameter type 'Future – Muhammad Adil Aug 07 '20 at 12:31Function()'. -
I think you are making a function call `_willPopCallback()`, just use `_willPopCallback` – Hemanth Raj Aug 09 '20 at 17:11