$100 Website Offer

Get your personal website + domain for just $100.

Limited Time Offer!

Claim Your Website Now

what is drawer in flutter

In Flutter, a Drawer is a sliding panel that typically contains a list of items. It is used for navigation within an app. The Drawer slides in from the side of the screen and can be opened by swiping from the left edge of the screen or by tapping the menu icon in the AppBar.

Example of Using a Drawer :-

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: HomeScreen(),
    );
  }
}

class HomeScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Home Screen'),
      ),
      drawer: Drawer(
        child: ListView(
          padding: EdgeInsets.zero,
          children: <Widget>[
            DrawerHeader(
              child: Text(
                'Drawer Header',
                style: TextStyle(color: Colors.white, fontSize: 24),
              ),
              decoration: BoxDecoration(
                color: Colors.blue,
              ),
            ),
            ListTile(
              leading: Icon(Icons.home),
              title: Text('Home'),
              onTap: () {
                Navigator.pop(context);
              },
            ),
            ListTile(
              leading: Icon(Icons.person),
              title: Text('Profile'),
              onTap: () {
                Navigator.pop(context);
              },
            ),
            ListTile(
              leading: Icon(Icons.settings),
              title: Text('Settings'),
              onTap: () {
                Navigator.pop(context);
              },
            ),
          ],
        ),
      ),
      body: Center(
        child: Text('Hello, world!'),
      ),
    );
  }
}

Key Components of a Drawer

Key Components of a Drawer

  • Drawer: The main widget that represents the drawer.
  • DrawerHeader: A header widget that can be placed at the top of the drawer.
  • ListView: A scrollable list of items inside the drawer.
  • ListTile: A widget that represents a single item in the list. It can have an icon, title, and an onTap callback.

Example Explained

  • AppBar: Contains a title and optionally a menu icon to open the drawer.
  • Drawer: Contains a ListView that holds a DrawerHeader and several ListTile widgets.
  • DrawerHeader: Displays a header at the top of the drawer.
  • ListTile: Represents individual items in the drawer. Each ListTile can have an icon, title, and an onTap event that can be used to handle navigation or other actions.

Related Posts

CMS Website Development Checklist: A Step-by-Step Guide for Business Owners

Introduction Your website is the digital headquarters of your business. It operates as your 24/7 sales representative, your primary marketing asset, and the first point of contact…

Read More

How to Choose the Right CMS for Your Business Website

Introduction A website serves as the digital engine of a modern business, but the software powering it determines how fast, secure, and adaptable that engine truly is….

Read More

Common CMS Website Mistakes and How to Avoid Them

Introduction A Content Management System (CMS) offers an accessible way to build, manage, and update a website without needing to write code from scratch. Because platforms like…

Read More

The Amaravati Discovery Guide: Sightseeing and Local Events

Introduction Amaravati is a destination where thousands of years of history, profound spiritual heritage, and evolving modern regional dynamics intersect. Situated along the southern banks of the…

Read More

Navigating DataOps Courses, Certifications, and Professional Services

Introduction Modern organizations rely on fast, accurate, and accessible data to drive operations, customer experiences, and strategic decisions. Yet, as data volumes grow and data architectures expand…

Read More

Integrating AI Software Development with Cloud and DevOps Pipelines

Introduction Modern software engineering has moved far beyond traditional application coding and routine deployments. Organizations across industries are racing to build intelligent, cloud-native platforms capable of processing…

Read More
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x