HTMLify

drawer_mobile.dart
Views: 15 | Author: cody
import 'package:flutter/material.dart';
import 'package:my_portfolio/constants/colors.dart';
import 'package:my_portfolio/constants/nav_items.dart';

class DrawerMobile extends StatelessWidget {
  const DrawerMobile({super.key, required this.onNavItemTap});
  final Function(int) onNavItemTap;

  @override
  Widget build(BuildContext context) {
    return Drawer(
        backgroundColor: CustomColor.scaffoldBg,
        child: ListView(
          children: [
            Align(
              alignment: Alignment.centerRight,
              child: Padding(
                padding: const EdgeInsets.only(
                  right: 20, 
                  top: 20, 
                  bottom: 20,
                ),
                child: IconButton(
                  onPressed: (){
                    Navigator.of(context).pop();
                  }, 
                  icon: const Icon(Icons.close),
                ),
              ),
            ),
            for(int i=0; i<navIcons.length;i++)
            ListTile(
              contentPadding: EdgeInsets.symmetric(
                horizontal: 30.0,
              ),
              titleTextStyle: TextStyle(
                color: CustomColor.whitePrimary,
                fontWeight: FontWeight.w600,
                fontSize: 16,
              ),
              onTap: (){
                onNavItemTap(i);
              },
              leading: Icon(navIcons[i]),
              title: Text(navTitles[i]),
            ),
          ],
        ),
      );
  }
}

Comments