【发布时间】:2021-10-25 16:10:00
【问题描述】:
我需要你的帮助,因为我正在定制我的 AppBar,我想知道是否有办法决定在前导部分显示什么:在我的主页上,我想看到一个徽标,但是如果我导航到其他屏幕,我希望看到后退按钮。所以我的问题是:有没有办法编写一个 AppBar 类,其中可能有一个语句,设备显示徽标或后退按钮(查看导航历史记录)? 希望您能理解并感谢。
【问题讨论】:
我需要你的帮助,因为我正在定制我的 AppBar,我想知道是否有办法决定在前导部分显示什么:在我的主页上,我想看到一个徽标,但是如果我导航到其他屏幕,我希望看到后退按钮。所以我的问题是:有没有办法编写一个 AppBar 类,其中可能有一个语句,设备显示徽标或后退按钮(查看导航历史记录)? 希望您能理解并感谢。
【问题讨论】:
我建议你阅读这篇文章来拥有不同类型的 appbar:
【讨论】:
当然,这很简单:
在您的主屏幕中,将您的徽标(可以是任何小部件)传递给 AppBar 的 leading 参数。
在其他屏幕上,不传递任何内容并设置automaticallyImplyLeading: true - AppBar 将自动创建一个返回按钮。
或者,如果您只为整个应用使用一个 AppBar,请使用这个 sn-p:
AppBar(
leading: ModalRoute.of(context).settings.name == "MY_HOME_SCREEN_ROUTE" ? MyLogoWidget : null,
automaticallyImplyLeading: true,
...
);
【讨论】: