El botón Atrás no está habilitado en Chrome. Entonces, cuando navego a la siguiente pantalla, no tengo ninguna opción para volver a la pantalla anterior. El problema ocurre en los siguientes casos. Inicie cualquier aplicación web flutter directamente por
Es extraño que funcione cuando presiona el botón Actualizar en Chrome después de que se inicia la aplicación en el navegador. O cuando se implemente la aplicación, copie el enlace y péguelo en la pestaña del navegador y presione Intro.
Cómo resolverlo, el botón Atrás debe estar habilitado cuando se navega a la siguiente pantalla al iniciar directamente la aplicación en el navegador desde IDE o al presionar el enlace.
Cualquiera puede comprobarlo creando un nuevo proyecto web flutter y ejecutando . Estoy pegando mi código de muestra como referencia
import 'package:back_button_sample/second_screen.dart'; import 'package:flutter/material.dart'; void main() { runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Demo', theme: ThemeData( primarySwatch: Colors.blue, ), home: const MyHomePage(title: 'Flutter Demo Home Page'), ); } } class MyHomePage extends StatefulWidget { const MyHomePage({Key? key, required this.title}) : super(key: key); final String title; @override State<MyHomePage> createState() => _MyHomePageState(); } class _MyHomePageState extends State<MyHomePage> { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(widget.title), ), body: Center( child: ElevatedButton( onPressed: () => Navigator.of(context) .push(MaterialPageRoute(builder: (ctx) => SecondScreen())), child: Text('Next'), ), ), ); } }
Segunda pantalla
import 'package:flutter/material.dart'; class SecondScreen extends StatelessWidget { const SecondScreen({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return Container( child: Text('Second screen'), ); } }