You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

嵌套路由中自定义AppBar高度异常翻倍的问题求助

嵌套路由中自定义AppBar高度异常翻倍的问题求助

各位好,我碰到了一个Flutter嵌套路由结合自定义AppBar的诡异问题,想请大家帮忙分析下:

我自定义了一个MainAppBar,把它的preferredSize设为了56px,然后封装到了PageWrapper组件里,这个Wrapper的核心代码如下:

return Scaffold(
  extendBodyBehindAppBar: true,
  backgroundColor: backgroundColor,
  appBar: MainAppBar(
    isModal: isModal,
    titleString: titleString,
    backButton: backButton,
    showPresence: showPresence,
  ),
  body: child,
);

现在我的应用采用了GoRouter的嵌套路由结构,其中某个子路由页面同样使用了这个PageWrapper。我的预期是外层页面显示一个AppBar,子页面也显示自己的AppBar,也就是界面上能看到两个独立的AppBar(相当于在主应用里内嵌展示一个小应用)。

但实际运行时出了问题:子页面的AppBar高度变成了112px,其中上面的56px是一块空白区域,只有下方的56px是正常的AppBar内容。而且只要我去掉外层的PageWrapper,子页面的AppBar就立刻恢复成正常的56px高度。看起来像是子AppBar把外层AppBar的高度也计算进去了,才导致了这块奇怪的空白。

有没有朋友遇到过类似的情况?或者能帮我搞清楚到底是什么原因导致的,以及该怎么解决这个问题?

(补充:异常状态下的界面截图显示,子AppBar上方存在一块与外层AppBar等高的空白区域,整体高度翻倍)

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 08:07:59