Si encuentras algún problema con tu código o proyecto, recuerda probar siempre en un ambiente de testing antes subir el código al proyecto final.
Solución:
¿Estás usando exactamente Navigator.of(context).pop()
? No puedo reproducir tu problema, ¿puedes publicar un ejemplo mínimo para reproducirlo?
El siguiente código funciona como se esperaba: el botón de configuración abre el cajón, mientras que el otro no.
class MyHomePage extends StatefulWidget
MyHomePage(Key key, this.title) : super(key: key);
final String title;
@override
_MyHomePageState createState() => new _MyHomePageState();
class _MyHomePageState extends State
String text = "Initial Text";
@override
Widget build(BuildContext context)
return new Scaffold(
drawer: new Drawer(
child: new ListView(
children: [
new Container(child: new DrawerHeader(child: new Container())),
new Container (
child: new Column(
children: [
new ListTile(leading: new Icon(Icons.info),
onTap:()
setState(()
text = "info pressed";
);
),
new ListTile(leading: new Icon(Icons.save),
onTap:()
setState(()
text = "save pressed";
);
),
new ListTile(leading: new Icon(Icons.settings),
onTap:()
setState(()
text = "settings pressed";
);
Navigator.of(context).pop();
),
]
),
)
],
),
),
appBar: new AppBar(title: new Text("Test Page"),),
body: new Center(child: new Text((text)),
));
crear scaffoldKey
cerrar cajón
_scaffoldKey.currentState.openEndDrawer(),
cajón abierto
scaffoldKey.currentState.openDrawer(),
Ejemplo
InkWell(
onTap: ()=> widget.scaffoldKey.currentState.openDrawer(),
child: Icon(
Icons.menu,
size: 38,
color: Color(0xFFFFFFFF),
),
),
Nos encantaría que puedieras dar recomendación a este enunciado si te fue útil.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)