¿Cómo implementar una barra de navegación adaptativa y receptiva en Flutter?

La barra de navegación en las aplicaciones web juega un papel crucial. Y diferentes marcos tienen diferentes estilos para implementar. En Flutter, tenemos que mencionar de manera diferente tanto para dispositivos móviles como para sitios web. Pero podemos implementar los mismos elementos de navegación en el cajón con este paquete adaptive_navbar en Flutter.

Adaptive_navbar developed by Mouli Bheemaneti

 

Cómo implementar la barra de navegación adaptable en Flutter

Agregar dependencia

Agregue esta dependencia en su archivo pubspec.yaml

dependencies:
  adaptive_navbar: ^0.0.1 #check for latest in versions at https://pub.dev/packages/adaptive_navbar/versions

O simplemente puede ejecutar el siguiente comando en su terminal en el directorio del proyecto, para agregarlo directamente a su dependencia

$ flutter pub add adaptive_navbar

Importar

Importe la barra de navegación a su aplicación flutter.

import 'package:adaptive_navbar/adaptive_navbar';

NavBarItem

NavBarItem toma el texto y una función para onTap como sus argumentos. Según el tamaño de la pantalla, AdaptiveNavbar decide si mostrar el icono de menú en la parte superior derecha o los elementos de la barra de navegación en la barra de navegación.

Ejemplo

Siga este ejemplo para comprender claramente cómo funciona AdaptiveNavbar .

Dart

import 'package:flutter/material.dart';
import 'package:adaptive_navbar/adaptive_navbar.dart';
  
void main() {
  runApp(const MyApp());
}
  
class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);
  
  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Adaptive NavBar',
      home: HomePage(),
    );
  }
}
  
class HomePage extends StatelessWidget {
  const HomePage({Key? key}) : super(key: key);
  
  @override
  Widget build(BuildContext context) {
    final sw = MediaQuery.of(context).size.width;
  
    return Scaffold(
      appBar: AdaptiveNavBar(
        screenWidth: sw,
        title: const Text("Adaptive NavBar"),
        navBarItems: [
          NavBarItem(
            text: "Home",
            onTap: () {
              Navigator.pushNamed(context, "routeName");
            },
          ),
          NavBarItem(
            text: "About Us",
            onTap: () {
              Navigator.pushNamed(context, "routeName");
            },
          ),
          NavBarItem(
            text: "About Us",
            onTap: () {
              Navigator.pushNamed(context, "routeName");
            },
          ),
          NavBarItem(
            text: "About Us",
            onTap: () {
              Navigator.pushNamed(context, "routeName");
            },
          ),
        ],
      ),
      body: const Center(
        child: Text(
          'This package, "ADAPTIVE NAVBAR", was developed by Mouli Bheemaneti.',
        ),
      ),
    );
  }
}

Producción:

Publicación traducida automáticamente

Artículo escrito por moulibheemaneti99 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *