はじめまして。
Flutterでアプリを制作しています。
back keyイベントを拾う方法をご教授いただければ幸いです。
以下の画像の最下部 赤い〇で囲んだ部分です。
WillPopScopeクラスを使って、左上のback keyイベント(青い〇)は拾えましたが
赤い〇の部分は拾えておりません。
どうぞよろしくお願いいたします。
responseView.dart
1class ResponseView extends StatelessWidget { 2 3 return WillPopScope( 4 onWillPop: () async { 5 return showDialog( 6 context: context, 7 builder: (context) => new AlertDialog( 8 title: new Text('Are you sure?'), 9 content: new Text('Do you want to exit an App'), 10 actions: <Widget>[ 11 new GestureDetector( 12 onTap: () => Navigator.of(context).pop(false), 13 child: Text("NO"), 14 ), 15 SizedBox(height: 16), 16 new GestureDetector( 17 onTap: () => Navigator.of(context).pop(true), 18 child: Text("YES"), 19 ), 20 ], 21 ), 22 ) ?? 23 false; 24 }, 25 child: new Scaffold( 26 appBar: new AppBar( 27 title: new Text( 28 "On Back pressed", 29 style: new TextStyle(color: Colors.white), 30 ), 31 ), 32 body: new Center( 33 child: new Text("Home Page"), 34 ), 35 ), 36 ); 37 } 38}
手元で試したところ、うまく動いたので、よければ Flutter のバージョンを教えて欲しいです
1.17.0 でしょうかね?flutter --versionで調べてみました。
C:\Users\kobaryo\AndroidStudioProjects\flutter_gowjp_0823>flutter --version
Warning! The 'flutter' tool you are currently running is from a different Flutter repository than the one last used by this package. The repository from which the 'flutter' tool is
currently executing will be used instead.
running Flutter tool: C:\flutter
previous reference : C:\flutterSDK\flutter
This can happen when you have multiple copies of flutter installed. Please check your system path to verify that you are running the expected version (run 'flutter --version' to see
which flutter is on your path).
╔════════════════════════════════════════════════════════════════════════════╗
║ A new version of Flutter is available! ║
║ ║
║ To update to the latest version, run "flutter upgrade". ║
╚════════════════════════════════════════════════════════════════════════════╝
Flutter 1.17.0 • channel stable • https://github.com/flutter/flutter.git
Framework • revision e6b34c2b5c (4 months ago) • 2020-05-02 11:39:18 -0700
Engine • revision 540786dd51
Tools • Dart 2.8.1
もしかしたら、Flutterのバージョンなども関係しているかもしれませんね。
自分は1.20.2で試した所正常に動作したので、よければflutter upgradeして再度試してみてください。
以前はご回答いただきありがとうございます。
flutter upgradeによって1.20.3へバージョンアップしてみましたが、同じく赤丸のbackキーのみ効きませんでした。(sdkバージョン28の端末入れて動作確認しています)
そちらの端末では正常動作してこちらでは効かないということで、別の要因があるみたいです。
なるほど、だとすると自分には分からないです。すいません...。
あなたの回答
tips
プレビュー