flutter - 仅某些选项卡的底页可见性

标签 flutter dart position

有没有一种方法可以让 Exhibitionbottomsheet 仅在用户位于指定选项卡上时可见,而对于其他选项卡则不可见。

代码-

Tabs(refresh: () => setState(() {})),
                value == 0 ? Center(child: AboutPage()) : Container(),
                value == 1 ? Center(child: Sliding()) : Container(),
                value == 2 ? Center(child: CoveragePage()) : Container(),
              ],
            ),
          ),
          ExhibitionBottomSheet()

在上面的代码中,ExhibitionBottomSheet()对所有的tabs都是可见的,但是如果只对Sliding()可见就更好了。那么有什么办法可以做到吗?

我尝试在 Sliding() 卡本身中调用 ExhibitionBottomSheet() 而不是为所有选项卡调用,但由于所有三个选项卡都是 sizedBox,它显示定位错误但在选项卡下方调用它时工作正常,如您所见. ExhibitionBottomSheet() 是一个可扩展的底部小部件。

最佳答案

最快的方法是仅在选择了正确的选项卡时才呈现它,如下所示:

Column(
  children: <Widget>[
    Tabs(/* as before */),
    if(value == 1)
      ...[ExhibitionBottomSheet()]
  ],
),

只有当第二个选项卡处于事件状态时,才会显示底部工作表。

关于flutter - 仅某些选项卡的底页可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57282798/

相关文章:

flutter - 当我将自定义小部件插入 Column/Flutter 中时,它会崩溃

dart - 沿着名称值对向服务器发送多部分请求

dart - 如何在Flutter聊天应用程序中使用Pusher

HTML/CSS 将 DIV 对齐到页面底部和屏幕 - 以先到者为准

html - 无法指定悬停时显示的彩色 div 的宽度

firebase - Flutter Firebase 实时 once().then() 重新运行时不会更新

flutter - Flutter 中的 Firebase 后台消息处理程序产生重复的隔离并运行应用程序两次

angular - Dart 中的构建时值注入(inject)

dart - 是否可以使用 flutter dart 构建并排功能比较表?如何?

html - 不考虑绝对定位元素的宽度