Eliminar botón de volver en AppBar
En Navegar entre dos pantallas y en Navegar con rutas hemos visto dos maneras de desplazarnos de una pantalla a otra, y después volver a la primera pantalla. En ambos casos, en la barra superior de la segunda pantalla nos aparece un icono-botón con forma de flecha que sirve para volver a la primera pantalla. Pero en ocasiones, por distintas razones, no interesa que el usuario haga uso de ese botón para volver a la ruta anterior, y por lo tanto queremos eliminarlo de la barra de la aplicación de esa pantalla.
Podemos hacerlo de distinta manera según el método de navegación utilizado.
Si hemos utilizado Navigator.push, en la appBar de la segunda pantalla podemos ajustar automaticallyImplyLeading a false (otra opción es crear un Container vacío en leading de la appBar, pero el título quedará desajustado):
appBar: AppBar(
title: Text("Pantalla 2"),
automaticallyImplyLeading: false,
// leading: Container(),
),
En el caso de utilizar rutas con nombres, en lugar de llamar a pushNamed, hay que llamar a pushReplacementNamed:
onPressed: () {
// Navigator.pushNamed(context, '/second');
Navigator.pushReplacementNamed(context, '/second');
},
En este caso, recuerda cambiar también la función para volver a la primera pantalla utilizando la ruta con nombre:
// Navigator.pop(context);
Navigator.pushReplacementNamed(context, '/');