come navigare in un'altra pagina in svolazzare facendo clic sul pulsante? [duplicare]

Aug 23 2020
Widget build(BuildContext context) {
    // TODO: implement build
    return MaterialApp(
      home: Scaffold(
        body: Container(
          padding: EdgeInsets.fromLTRB(10.0, 50.0, 10.0, 10.0),
          child: Column(
            children: [
              TextField(
                controller: user,
                decoration: InputDecoration(
                    border: OutlineInputBorder(
                        borderRadius: BorderRadius.circular(20.0)),
                    hintText: "ENTER USER NAME"),
              ),
              SizedBox(
                height: 10.0,
              ),
              TextField(
                controller: pass,
                decoration: InputDecoration(
                    border: OutlineInputBorder(
                        borderRadius: BorderRadius.circular(20.0)),
                    hintText: "ENTER USER NAME"),
              ),
              FlatButton(
                  onPressed: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) => Home()));
                  },
                  child: Text("NAVIGATOR"))
            ],
          ),
        ),
      ),
    );
  }

ottenere un errore in navigator.push

"Questo è l'errore che ricevo mentre sono in stampa" La seguente affermazione è stata lanciata mentre gestivo un gesto:

Operazione del Navigatore richiesta con un contesto che non include un Navigatore. Il contesto utilizzato per inviare o far apparire rotte dal Navigatore deve essere quello di un widget discendente di un widget Navigatore.

Risposte

AmanVerma Aug 23 2020 at 14:33
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
  body: Container(
    padding: EdgeInsets.fromLTRB(10.0, 50.0, 10.0, 10.0),
    child: Column(
      children: [
        TextField(
          controller: user,
          decoration: InputDecoration(
              border: OutlineInputBorder(
                  borderRadius: BorderRadius.circular(20.0)),
              hintText: "ENTER USER NAME"),
        ),
        SizedBox(
          height: 10.0,
        ),
        TextField(
          controller: pass,
          decoration: InputDecoration(
              border: OutlineInputBorder(
                  borderRadius: BorderRadius.circular(20.0)),
              hintText: "ENTER USER NAME"),
        ),
        FlatButton(
            onPressed: () {
              Navigator.push(
                  context, MaterialPageRoute(builder: (context) => Home()));
            },
            child: Text("NAVIGATOR"))
      ],
    ),
  ),
)
);
}

Si prega di scrivere codice come questo, ogni volta che si chiedono dubbi su qualsiasi piattaforma

Si prega inoltre di fornire il codice di Home()

ecco il codice modificato per Home ()

import 'package:flutter/material.dart';

class Home extends StatefulWidget {
  HomeState createState() => HomeState();
}

class HomeState extends State<Home> {
  @override
  Widget build(BuildContext context) {
     return Scaffold(
        body: Container(
          child: Column(
            children: [
              Text(
                "WELCOME",
                style: TextStyle(fontSize: 50.0),
              )
            ],
          ),
        ),
      );
  }
}