flutter - 为什么我的 AppBar 标题会更改缩进?
问题描述
我有一个有 2 页的简单应用程序。main.dart 文件有 1 个页面设置为 MaterialApp 的主页属性,如下所示:
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'MyApp',
theme: ThemeData(
visualDensity: VisualDensity.adaptivePlatformDensity,
),
home: MyFirstPage(),
);
}
}
第一次加载此页面时,标题靠近屏幕的左边缘。在第一页上,我有一个按钮,可以使用以下命令将我发送到第二页:
Navigator.push(context, PageRouteBuilder(pageBuilder: (_, a1, a2) => MySecondPage()));
在此页面上,AppBar 中的标题有一个左缩进。
同样,我的第二页上有一个按钮,它使用与上述 Navigator.push 相同的方法将我发送到我的第一页。然而,这一次,页面标题的缩进与我的第二页相同。
为什么我的第一页第一次打开时没有缩进?我怀疑这是因为它是使用 home 属性访问的,但我仍然不明白如何更改它。
解决方案
发生这种情况是因为当您将一个页面推送到另一个页面时,AppBar 中的标题左侧应该有一个后退按钮。
但是当你第一次启动时。FirstPage 是活动堆栈上唯一的小部件,因此没有返回按钮可以转到上一个活动。
推荐阅读
- typescript - SPFX - 长时间间隔后刷新 Web 部件
- python - 将行中的值附加到新列中?
- java - 如何在码头中使用通配符以编程方式设置处理程序上下文路径?
- amazon-web-services - API Gateway 异步(回调)在 EC2 中使用 Lambda 或 Workers 处理后对调用者的响应
- python - Python 在尝试重命名现有文件时引发 os 错误
- node.js - 错误:Discord.js 和 Postgresql 中未定义的行
- c - 在 C 中没有明确命令的情况下,while 循环如何递增?
- primefaces - PrimeFaces ChartJS 无法解决
- mysql - 对于连接表不匹配的情况,使用两个表之间的连接进行计算
- c - 即使我在 Linux(Mint 18.3)上使用 kill 命令发送信号,WIFSIGNALED 也会返回 false