如何在 flutter 中从一项活动导航到另一项活动

Ris*_*qui 2 android dart flutter

您好,我对 Flutter 和软件开发总体来说还很陌生。我似乎无法理解如何从一项活动导航到另一项活动。我真正想要的是,当我按下登录按钮时,它应该将我导航到新活动

void main() {
  runApp(MaterialApp(
    title: 'button navigation',
    home: HomeActivity(),
  ));
}

class HomeActivity extends StatelessWidget{
  gotoSecondActivity(BuildContext context){

    Navigator.push(
      context,
      MaterialPageRoute(builder: (context) => SecondActivity()),
    );
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Home Screen'),
      ),

      body: Center(
        child: RaisedButton(
          child: Text('Go To Second Screen'),
          color: Colors.red,
          textColor: Colors.white,
          onPressed: () {
            gotoSecondActivity(context);
          },
        ),
      ),
    );
  }
}
class SecondActivity extends StatelessWidget {

  goBack(BuildContext context){

    Navigator.pop(context);

  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Second Screen"),
      ),

      body: Center(
        child: RaisedButton(
          onPressed: () {
            goBack(context);
          },
          color: Colors.green,
          textColor: Colors.white,
          child: Text('Go Back To Previous Screen'),
        ),
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

这是我想要导航到的第二个活动的代码:

class SecondActivity extends StatelessWidget {

  goBack(BuildContext context){

    Navigator.pop(context);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Second Screen"),
      ),

      body: Center(
        child: RaisedButton(
          onPressed: () {
            goBack(context);
          },
          color: Colors.green,
          textColor: Colors.white,
          child: Text('Go Back To Previous Screen'),
        ),
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

onclick 函数如何在 flutter 上工作以及如何在我的按钮上实现它

Luc*_*gio 8

为了理解导航的概念,请想象一叠纸堆叠起来。

每次使用时:

Navigator.of(context).push(MaterialPageRoute(builder: (context) => AnotherPage(),));

你正在把一张纸“放”在那堆纸上。

Push用于将新纸张“放入”该堆中。

pop用来从那堆纸中“拉”出一张纸,换句话说,你会回到上一张纸(页)

前任:Navigator.pop(context);

还有其他类型的导航,我建议您查看后面的文档,如上面@dm_tr所说。