如何从Flutter中的其他页面调用ExitPopUp小部件?

问题描述 投票:0回答:1

我是新来的Flutter。我在单个页面中为ExitPopUp写了一个代码。这是代码-

import 'package:flutter/material.dart';

class ExitPopUp extends StatelessWidget {
  final page;
  ExitPopUp(this.page);
  @override
  Widget build(BuildContext context) {
    Future<bool> showExitPopUp() {
      return showDialog(
          context: context,
          builder: (BuildContext context) {
            return AlertDialog(
              title: Text("Confirm"),
              content: Text("Do you want to Exit ?"),
              actions: <Widget>[
                RaisedButton(child: Text("No"), onPressed: null),
                RaisedButton(child: Text("Yes "), onPressed: null)
              ],
            );
          });
    }

    return WillPopScope(child: page, onWillPop: showExitPopUp);
  }
}

现在我要从其他页面((*** example:* registration.dart)**)调用此ExitPopUp。这是注册页面的代码-

import 'package:bloodhero/widgets/drawer.dart';
import 'package:bloodhero/widgets/exitpop.dart';
import 'package:flutter/material.dart';
import 'package:bloodhero/widgets/form.dart';

class Registration extends StatefulWidget {
  @override
  _RegistrationState createState() => _RegistrationState();
}

class _RegistrationState extends State<Registration> {
  @override
  Widget build(BuildContext context) {
    return WillPopScope(
        onWillPop: () {
          print("Hey I am Dialog Box");
          return ExitPopUp();
        },
        child: Scaffold(
            appBar: AppBar(
              title: Text("Registration"),
              backgroundColor: Colors.deepOrange,
            ),
            drawer: DrawerApp(),
            body: ListView(
              children: <Widget>[
                FormPage(),
              ],
            )));
  }
}

但是它不起作用。 OnWillPop中的错误显示enter image description here

请帮助我,我该如何解决

flutter call
1个回答
0
投票

确保已在注册文件中导入ExitPopUp包类。

© www.soinside.com 2019 - 2024. All rights reserved.