【问题标题】:Flutter FlushBar unwinlingly hides top navigation bar while being showedFlutter FlushBar 在显示时不情愿地隐藏顶部导航栏
【发布时间】:2020-05-30 00:27:17
【问题描述】:

Flutter 1.17.1,iPhone XS Max(物理设备)。

当我使用.show() 启动 FlushBar 时,顶部导航栏在 FlushBar 淡入期间隐藏,并且仅在 FlushBar 开始淡出时再次显示。

这就是我启动 FlushBar 的方式:

Flushbar(
  message: 'message',
  duration: const Duration(seconds: 3),
  leftBarIndicatorColor: AppTheme.colorRed, // Custom color.
  flushbarPosition: position,
)..show(context);

下面的 GIF 演示了错误:

【问题讨论】:

  • 当你将flushbarPosition显式设置为FlushbarPosition.BOTTOM时,它是否会出现同样的行为。
  • 您应该提供更多代码,这可能与您的整个build()函数有关,因此我们需要查看它。
  • 看起来小部件正在向上推送所有内容,您可以尝试用安全区域包裹页面或使用堆栈在页面上显示您的小部件

标签: flutter dart flutter-animation


【解决方案1】:

我解决了这个问题。这与由于糟糕的开发选择而导致父级的 BuildContext 未持久化到其子级有关,因此 Flushbar 使用的是父级的上下文,然后将子级向上推。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    • 1970-01-01
    • 2016-03-29
    • 2017-01-21
    相关资源
    最近更新 更多