一尘不染

如何编写一个双后退按钮以使用Flutter退出应用程序

flutter

我是新手,但我看到双击后退按钮时,许多android应用程序都可以退出。

第一次按下“后退”按钮,应用会显示“再次按下以退出应用”的祝酒词。在第二次按下时,应用程序退出。当然,两次按下之间的时间必须不长。

怎么办?


阅读 278

收藏
2020-08-13

共1个答案

一尘不染

这是我的代码的示例(我使用“ fluttertoast”显示吐司消息,您可以使用小吃栏或警报或其他方式)

DateTime currentBackPressTime;

@override
Widget build(BuildContext context) {
  return Scaffold(
    ...
    body: WillPopScope(child: getBody(), onWillPop: onWillPop),
  );
}

Future<bool> onWillPop() {
    DateTime now = DateTime.now();
    if (currentBackPressTime == null || 
        now.difference(currentBackPressTime) > Duration(seconds: 2)) {
      currentBackPressTime = now;
      Fluttertoast.showToast(msg: exit_warning);
      return Future.value(false);
    }
    return Future.value(true);
  }
2020-08-13