トーストを使用して2回ボタンを押して終了します
TOostを使用して2回後退して終了
最近、多くのプライマリ・サイトが2回で終了します.
そしてトーストメッセージが表示されます.フラッシュでの作り方を知りましょう
インストールToast
Pubspec.yamlにToastを追加し、Pub getします.
コードの作成
個人プロジェクトはclean architecture形式で記述されるため,ビジネスロジックとUIロジックは別々である.
私の場合、utilフォルダを別途作成し、トーストの論理を作成しました.
DateTime? currentBackPressTime;
onWillPop() {
DateTime now = DateTime.now();
if (currentBackPressTime == null ||
now.difference(currentBackPressTime!) > const Duration(seconds: 2)) {
currentBackPressTime = now;
Fluttertoast.showToast(
msg: "'뒤로' 버튼을 한번 더 누르시면 종료됩니다.",
gravity: ToastGravity.BOTTOM,
backgroundColor: const Color(0xff6E6E6E),
fontSize: 20,
toastLength: Toast.LENGTH_SHORT);
return false;
}
return true;
}
何時に見ますか.now.difference(currentBackPressTime!) > const Duration(seconds: 2)) {
currentBackPressTime = now;
差分メソッドを使用して差分時間を取得します.
2秒以内に2回後退しないとfalseの最新メッセージが表示されます.
WillPopScope(
onWillPop: () async {
bool result = onWillPop();
return await Future.value(result);
},
child: Scaffold(
Future.value()指定した結果値を持つfutureのコンストラクション関数を生成します.
作成したonWillPop()を結果に入れてFuturevalue()に結果を表示します.
それでは完成!
Reference
この問題について(トーストを使用して2回ボタンを押して終了します), 我々は、より多くの情報をここで見つけました https://velog.io/@dino0806/토스트를-이용한-뒤로-버튼-두번-눌러야-종료Flutter-꿀팁テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol