📱
Flutter で Android と iOS のスワイプして戻る画面遷移機能を無効化する
なにこれ
この戻る機能を無くしたいので、それを実装した時のメモを書く
解決方法
PopScope
を利用して canPop: false
を実装するだけで大丈夫でした。
Before
class _HomeViewState extends State<HomeView> {
int selectedIndex;
_HomeViewState({Key? key, required this.selectedIndex});
Widget build(BuildContext context) {
return Scaffold(
// コードが続く
After
class _HomeViewState extends State<HomeView> {
int selectedIndex;
_HomeViewState({Key? key, required this.selectedIndex});
Widget build(BuildContext context) {
return PopScope( // ここを追加
canPop: false, // false で無効化
child: Scaffold( // Scaffold は child に入れる
// コードが続く
おわりに
この実装方法については公式サイトで紹介されていました。
デフォルトでは canPop は true ですよということでした。
追記
2024/08/03
Android の戻るボタンによってアプリをバックグラウンドへ移動させて、ホームに戻る処理を実装したくなったので以下をまとめました。
Discussion