Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如果我点击设备返回按钮,它应该重定向到上一页,但它直接进入应用程序的主页_Flutter_Flutter Layout_Flutter Navigation - Fatal编程技术网

Flutter 如果我点击设备返回按钮,它应该重定向到上一页,但它直接进入应用程序的主页

Flutter 如果我点击设备返回按钮,它应该重定向到上一页,但它直接进入应用程序的主页,flutter,flutter-layout,flutter-navigation,Flutter,Flutter Layout,Flutter Navigation,通过“设备后退”按钮导航时跳过页面 import 'package:flutter/material.dart'; import 'package:modal_progress_hud/modal_progress_hud.dart'; class Attendance extends StatefulWidget { @override State<StatefulWidget> createState() { return AttendanceCalendar(

通过“设备后退”按钮导航时跳过页面

import 'package:flutter/material.dart';
import 'package:modal_progress_hud/modal_progress_hud.dart';

class Attendance extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return AttendanceCalendar();
  }
}

class AttendanceCalendar extends State<Attendance> {
  bool isAsync = false;

  Widget build(BuildContext context) {
    return WillPopScope(
      onWillPop: _onBackButtonPressed,
      child: ModalProgressHUD(
        inAsyncCall: isAsync,
        child: Scaffold(
          appBar: AppBar(
              title: Text("Attendance");
          ),
          body: Container(),
        ),
      ),
    );
  }

  void _onBackButtonPressed() {
    Navigator.pop(context);
  }
}
导入“包装:颤振/材料.省道”;
导入“程序包:modal_progress_hud/modal_progress_hud.dart”;
课堂出勤扩展StatefulWidget{
@凌驾
状态createState(){
返回AttendanceCalendar();
}
}
班级出勤率Calendar扩展状态{
bool isAsync=false;
小部件构建(构建上下文){
返回式示波器(
onWillPop:_onBackButton按下,
儿童:ModalProgressHUD(
inAsyncCall:isAsync,
孩子:脚手架(
appBar:appBar(
标题:文本(“出席”);
),
主体:容器(),
),
),
);
}
void _onBackButtonPressed(){
Navigator.pop(上下文);
}
}

如果您使用MaterialApp()作为此页面以及以前页面上的根小部件,则页面将加载到相同的MaterialApp空间中。然后按“上一步”按钮在相同的材质应用程序之间切换导航。因此,建议您使用Scaffold()作为根小部件