【问题标题】:Show dialog when drawer is pressed按下抽屉时显示对话框
【发布时间】:2022-08-04 20:54:55
【问题描述】:

当抽屉被按下时,我试图制作一个警告对话框,但不知道为什么它不起作用。

 drawer: Drawer(
              child: Column(
            children: [
              DrawerHeader(
                  decoration: BoxDecoration(
                    color: Colors.purple,
                  ),
                  padding: EdgeInsets.all(4),
                  child: UserAccountsDrawerHeader(
                    decoration: BoxDecoration(color: Colors.purple),
                    accountName: Text(\"Aman Nafiz\",
                        style: TextStyle(color: Colors.white, fontSize: 15)),
                    accountEmail: Text(\"amannafiz@gmail.com\",
                        style: TextStyle(color: Colors.white, fontSize: 15)),
                    currentAccountPictureSize: Size.fromRadius(28),
                    currentAccountPicture: CircleAvatar(
                      backgroundColor: Colors.purpleAccent,
                      child: Icon(
                        Icons.person,
                        size: 19,
                      ),
                    ),
                  )),
              ListTile(
                leading: Icon(Icons.add_box),
                title: Text(
                  \"Add Quotes\",
                ),onTap:(){setState(() {
                   showDialog(
                        context: context,
                        builder: (context) => AlertDialog(
                              title: Text(\"Write the Quote and Authors name.\"),
                              content: TextFormField(
                                decoration: InputDecoration(
                                    border: OutlineInputBorder(
                                        borderSide: BorderSide(
                                          width: 8,
                                        ),
                                        borderRadius: BorderRadius.all(
                                            Radius.circular(5)))),
                              ),
                            ));

                });} ,
              ),
  • 你不需要使用setState。另外,请说明什么不起作用。你有什么错误吗?
  • 好的,好吧,当我按下抽屉中的 ListTile 时,应该会弹出一个 AlertDialogBox 但即使按下它,AlertDialogBox 也不会显示或弹出。
  • 有什么例外吗?

标签: flutter drawer flutter-alertdialog


【解决方案1】:

你的代码对我有用。我认为您需要重新启动模拟器。

【讨论】:

  • ══╡例外被手势抓住╞══════════════════════════════════════════ ═════════════════════════ 处理手势时引发以下断言:未找到 MaterialLocalizations。第一个小部件需要由 Localizations 小部件祖先提供的 MaterialLocalizations。
  • 我的调试控制台显示了这个问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-12
  • 1970-01-01
  • 2013-12-23
  • 1970-01-01
相关资源
最近更新 更多