当前位置: 首页 > 知识库问答 >
问题:

使用MaterialApp Builder在屏幕上有一个公共脚手架,但导航时不在AppBar中显示后退按钮

巫墨一
2023-03-14

我试图使用MaterialApp Builder在屏幕上有一个公共脚手架,但back按钮在导航上不显示在AppBar中。我是个初来乍到的人。任何理解原因/修复原因的方向都将有所帮助。

材料应用程序小部件

class MyApp extends StatefulWidget {
  // This widget is the root of your application.
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  final AppRouter _appRouter = AppRouter();

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: APP_TITLE,
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      builder: (context, child) => Scaffold(
        appBar: AppBar(
          title: Text(APP_TITLE),
        ),
        body: child,
      ),
      onGenerateRoute: _appRouter.onGenerateRoute,
    );
  }

  @override
  void dispose() {
    _appRouter.dispose();
    super.dispose();
  }
}

主屏幕


class _HomeScreenState extends State<HomeScreen> {
  int _counter = 0;

  @override
  Widget build(BuildContext context) {
    return Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          crossAxisAlignment: CrossAxisAlignment.center,
          children: <Widget>[
           Text(
              'My Home Screen',
            ),
            ElevatedButton(
              child: Text("Navigate Back Here"),
              onPressed: () {
                Navigator.of(context).pushNamed('/');
              },
            ),
          ],
        ),
      );
  }
}

共有1个答案

楚知
2023-03-14

我想你不能按下主路由,你可以使用一个后退按钮:navigator.of(context).push(MaterialPageRoute(builder:(_)=>secondscreen()));

flutter中默认为home route定义了“/”路由,所以如果您想定义命名的路由,请使用其他内容来表示ex:'secondscreen/'

 类似资料:
  • XML 活动 创建 已选择选项项 在getActionBar()行上获取空指针异常。setDisplayHomeAsUpEnabled(真);

  • 下面是代码:home.xml Home.java 我是不是也应该贴上HomFrag代码? 这三张照片给出了关于问题的所有信息,正如你可以看到的第一张图片显示了应用程序的启动。然后我点击其他页面,点击返回,我得到的结果在第二个图像,和第三个空白屏幕时,我再次点击返回。我不明白问题的原因,如果有谁以前遇到过这个问题,请帮助。

  • 谁能引导我过去吗?也许我的效用不好?

  • 问题内容: 我正在使用react native导航(react- navigation)StackNavigator。它从应用程序整个生命周期的“登录”页面开始。我不想使用返回选项,返回“登录”屏幕。有谁知道登录屏幕后如何将其隐藏在屏幕上?顺便说一句,我也使用以下命令将其隐藏在登录屏幕中: 问题答案: 1)要使后退按钮在react-navigation v2或更高版本中消失: 2)如果您要清理导航

  • 我有三个类实现了LibGdx屏幕类: 主菜单屏幕,关卡选择屏幕,游戏屏幕 现在我有Main MenuScreen的setCatchBackKey设置为false,所以游戏将只退出后按。 LevelSelectScreen和GameScreen已将setCatchBackKey设置为true。 在GameScreen的渲染功能中,我有: 它将屏幕设置为显示level select,并且在LevelS