2 votes

Flutter - Y a-t-il un moyen d'utiliser simplement IconButton (sans créer de barre d'application) pour ouvrir le tiroir?

Je cherche à utiliser l'IconButton qui peut ouvrir le tiroir sur la page de mon application, donc quand je tape sur le bouton icône, je m'attends à voir le tiroir. J'ai cherché un moyen de le faire en ligne, mais il semblait qu'il n'y avait que deux solutions : je peux soit utiliser l'appbar pour placer l'IconButton, soit essayer le bouton d'action flottant. Mais ce ne sont pas ce que je recherche, je veux juste que l'IconButton ouvre le tiroir. Est-ce possible de le faire?

2voto

Tahseen Quraishi Points 488

Oui, vous pouvez facilement ouvrir le tiroir via IconButton sans utiliser appBar. Vous devez utiliser une clé comme je l'avais fait avec _scaffoldKey et utiliser la méthode _scaffoldKey.currentState.openDrawer() pour ouvrir le tiroir dans le widget IconButton.

class HomeState extends StatelessWidget {

final GlobalKey _scaffoldKey = GlobalKey();

 @override
Widget build(BuildContext context) {

return Scaffold(
  key: _scaffoldKey,
         drawer: Drawer(
      child: ListView(
        children: [
          ListTile(
            title: Text("Élément 1"),
            trailing: Icon(Icons.arrow_forward),
          ),
          ListTile(
            title: Text("Élément 2"),
            trailing: Icon(Icons.arrow_forward),
          ),
        ],
      ),
    ),
        body: ListView(
         children:[

    Container(
              margin: EdgeInsets.only(left: 15.0,top:100.0),
              child: IconButton(
                icon: Icon(Icons.menu),
                onPressed: () {
                  _scaffoldKey.currentState.openDrawer();
                },

              ),
            ),
            ]
        ),
            );}

   }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X