我如何在此处插入抽屉?

how do i insert a drawer in here?

我想在这里放一个抽屉,但总是出错。我已经在错误的地方发表了评论 is.Please 检查出来并帮助我。

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

AppBar appBar(String name) {

  return AppBar(
    leading: Text(""),
    title: Text(
      name,
      style: TextStyle(color: Colors.blue),
    ),
    // centerTitle: true,
    
    elevation: 0,
    backgroundColor: Colors.transparent,
    
    actions: <Widget>[
      IconButton(
          icon: Icon(
            Icons.notification_important,
            color: Colors.blue,
          ),
          onPressed: () {}),
      
    ],
 );
}

class Drawer extends StatefulWidget {
  @override
  _DrawerState createState() => _DrawerState ();
}


class _DrawerState extends State <Drawer> {

@override

Widget build(BuildContext context) {

    return Scaffold(
      

      drawer: new Drawer (

我在这里收到一条错误消息:命名参数 'child' 未定义。 尝试将名称更正为现有命名参数的名称,或使用名称 'child' 定义命名参数。我能得到一些帮助来解决这个问题吗?

              child: <Widget>[

                ListView(
                
                  children : <Widget>[

                    ListTile(

                      onTap: (){},
                      leading: Icon(Icons.arrow_back),
                      title: Text("Back"),
  
                    ),

                    ListTile(

                      onTap: (){},
                      leading: Icon(Icons.home),
                      title: Text("Home"),
                    ),

                    ListTile(

                      onTap: (){},
                      leading: Icon(Icons.settings),
                      title: Text("Settings"),
                    ),


                     ListTile(

                      onTap: (){},
                      leading: Icon(Icons.mood_bad),
                      title: Text("Logout"),
                    ),
            ]
          ),
        ],               

      ),

     
    );
  }


}

您将 class 命名为“抽屉”,这会覆盖默认值 class。只需将 class 更改为“MyDrawer”即可。

而且您小时候需要的是小部件而不是小部件列表,但我相信您一定能够解决这个问题。

child 可以是 Widget 而不是 List<Widget> 并且还可以将 class 重命名为其他不要使用抽屉的名称。

drawer: Drawer(
        child: ListView(
          children: [
            ListTile(
              onTap: () {},
              leading: Icon(Icons.arrow_back),
              title: Text("Back"),
            ),
            ListTile(
              onTap: () {},
              leading: Icon(Icons.home),
              title: Text("Home"),
            ),
            ListTile(
              onTap: () {},
              leading: Icon(Icons.settings),
              title: Text("Settings"),
            ),
            ListTile(
              onTap: () {},
              leading: Icon(Icons.mood_bad),
              title: Text("Logout"),
            ),
          ],
        ),
      ),

希望这能解决您的问题