【问题标题】:Flutter SnackBar leaves an invisible padding in the ScaffoldFlutter SnackBar 在 Scaffold 中留下不可见的填充
【发布时间】:2021-07-24 15:36:02
【问题描述】:

我在页面中显示了一个登录按钮。例如,用户登录后,SnackBar 将显示“Logged In with Google”。虽然SnackBar 仍在显示,但Scaffold 的主体正在构建到一个新页面,登录用户可以访问该页面。但是,在 Snackbar 仍然显示时构建页面会在脚手架中留下一个填充,在 SnackBar 使用的区域中,因此底层 Scaffold body 仍然可见,但您无法与其交互.如果body 的底部有一个按钮,则不会点击该按钮,因为(已经关闭的)SnackBar 留下的不可见填充会阻止下面的内容。

我错过了什么?还有其他方法可以产生预期的结果吗?

【问题讨论】:

  • 我找到了问题的根本原因。如果在一个页面中显示一个 Snackbar,并且在显示它时,用户移动到另一个页面(例如在 bottomNagationBar 中),则新页面是使用我提到的填充问题构建的。但是,如果SnackBar 在移动到另一个页面之前消失,则没有问题。因此,将可见的SnackBar“传输”到另一个页面会产生很多问题。知道可以做什么吗?

标签: flutter dart snackbar scaffold


【解决方案1】:

我在每一页都用ScaffoldMessenger 包裹了Scaffold,现在似乎可以工作了。我稍后会详细说明答案。

【讨论】:

    猜你喜欢
    • 2021-11-25
    • 2019-12-15
    • 1970-01-01
    • 1970-01-01
    • 2013-08-24
    • 2014-01-22
    • 2018-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多