Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

NavigationDrawer custom widget not accepted

A few weeks ago I was able to launch a project without errors.

Now, I am trying to launch the project again but there are some errors on it.

Here you have the code for the widget NavigationDrawer:

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

class NavigationDrawer extends StatefulWidget {
  const NavigationDrawer({Key? key}) : super(key: key);

  @override
  State<NavigationDrawer> createState() => _NavigationDrawerState();
}

class _NavigationDrawerState extends State<NavigationDrawer> {



  @override
  Widget build(BuildContext context) {
    User? usuario = FirebaseAuth.instance.currentUser;
    var correo = usuario!.email;
    bool esAmbassador = false;
    String avatar ="";
    String alias = "";

    //global key para el DRawer

    GlobalKey<ScaffoldState> _key = GlobalKey();


    Stream<DocumentSnapshot<Map<String, dynamic>>> documentStream = FirebaseFirestore.instance.collection('perfiles').doc(correo).snapshots();

    return StreamBuilder<DocumentSnapshot<Map<String, dynamic>>>(
      stream: documentStream,
      builder: (context, snapshot) {

        if(snapshot.connectionState == ConnectionState.active){
          print("avatar es ${snapshot.data!['alias']}");
          print("esBmx es ${snapshot.data!['esBmx']}");
          print("esAmb es ${snapshot.data!['esAmbassador']}");

          avatar = snapshot.data!['avatar'];
          alias = snapshot.data!['alias'];

          if(snapshot.data!['esAmbassador']){
            esAmbassador = true;
          }
          else{
            esAmbassador = false;
          }
        }
        return Drawer(
          child:ListView(
            children: [
              DrawerHeader(
                decoration: BoxDecoration(
                  color: AppColors.rojoMovMap,
                ),
                child: Center(
                  child: Column(
                    crossAxisAlignment: CrossAxisAlignment.start,
                    children: [
                      Padding(
                        padding: const EdgeInsets.all(8.0),
                        child: Row(
                          mainAxisAlignment: MainAxisAlignment.start,
                          children: [
                            Container(
                              width: 100,
                              height: 100,
                              decoration: BoxDecoration(
                                borderRadius: BorderRadius.circular(180),
                                border: Border.all(color: Colors.black, width: 4),
                                image: DecorationImage(
                                    fit: BoxFit.fill, image: NetworkImage(avatar)),
                              ),
                            ),
                          ],
                        ),
                      ),
                      Row(
                        children: [
                          Text(alias,style: TextStyle(fontSize: 18,fontWeight: FontWeight.bold,color: Colors.white),)
                        ],
                      )
                    ],
                  ),
                ),
              ),
              ListTile(
                title: Text("drawer1".tr(),style: TextStyle(fontSize: 16),),
                leading: Container(
                  width: 30,
                  height: 30,
                  decoration: BoxDecoration(
                      image: DecorationImage(
                          image: AssetImage("assets/images/edit_profile.png")
                      )
                  ),
                ),
                onTap: ()
                {

                  Navigator.push(
                      context,
                      MaterialPageRoute(
                        builder: (context) => EditarPerfil1(), //#0006
                      ));

                },
              ),

              ListTile(
                title: Text("drawer2".tr(),style: TextStyle(fontSize: 16),),
                leading: Container(
                  width: 30,
                  height: 30,
                  decoration: BoxDecoration(
                    image: DecorationImage(
                      image: AssetImage("assets/images/mi_network.png")
                    )
                  ),
                ),
                onTap: ()
                {

                  Navigator.push(
                      context,
                      MaterialPageRoute(
                        builder: (context) => MiNetwork(), //#0006
                      ));

                },
              ),

              ListTile(
                title: Text("drawer3".tr(),style: TextStyle(fontSize: 16),),
                leading: Container(
        width: 30,
        height: 30,
        decoration: BoxDecoration(
        image: DecorationImage(
        image: AssetImage("assets/images/privacy.png")
        )
        ),
        ),
                onTap: ()
                {

                  Navigator.push(
                      context,
                      MaterialPageRoute(
                        builder: (context) => TermsUso(), //#0006
                      ));

                },
              ),
              ListTile(
                title: Text("drawer4".tr(),style: TextStyle(fontSize: 16),),
                leading: Container(
                  width: 30,
                  height: 30,
                  decoration: BoxDecoration(
                      image: DecorationImage(
                          image: AssetImage("assets/images/contact.png")
                      )
                  ),
                ),
                onTap: ()
                {

                  Navigator.push(
                      context,
                      MaterialPageRoute(
                        builder: (context) => Contacto(), //#0006
                      ));

                },
              ),
              ListTile(
                title: Text("drawer5".tr(),style: TextStyle(fontSize: 16),),
                leading: Container(
                  width: 30,
                  height: 30,
                  decoration: BoxDecoration(
                      image: DecorationImage(
                          image: AssetImage("assets/images/about.png")
                      )
                  ),
                ),
                onTap: ()
                {

                  Navigator.push(
                      context,
                      MaterialPageRoute(
                        builder: (context) =>  AcercaDe(), //#0006
                      ));

                },
              ),
              ListTile(
                title: Text("drawer6".tr(),style: TextStyle(fontSize: 16),),
                leading: Container(
                  width: 30,
                  height: 30,
                  decoration: BoxDecoration(
                      image: DecorationImage(
                          image: AssetImage("assets/images/ic_ambassador.png")
                      )
                  ),
                ),
                onTap: ()
                {

                  Navigator.push(
                      context,
                      MaterialPageRoute(
                        builder: (context) => ConvertirAmb(), //#0006
                      ));

                },
              ),
              ListTile(
                title: Text("drawer7".tr(),style: TextStyle(fontSize: 16),),
                leading: Container(
                  width: 30,
                  height: 30,
                  decoration: BoxDecoration(
                      image: DecorationImage(
                          image: AssetImage("assets/images/salir.png")
                      )
                  ),
                ),
                onTap: ()
                {

                  ServiciosFirebaseUsuario().cerrarSesion(context);

                },
              )
            ],
          ) ,
        );
    });
      }




}

All errors are related to that widget, like here in class UsuarioPage:

   return SafeArea(

      child: Scaffold(
        drawer: NavigationDrawer(key: widget.key,),
        appBar: AppBar(
          title: Text(miEmail!),
        ),


        body:
              Column(
                children:[

And this is the error output:

enter image description here

>Solution :

NavigationDrawer is name of a flutter Widget,try changing the name of your class to something else

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading