flutter - 如何在 flutter 的 ScrollView 中将容器或任何其他小部件固定在应用栏下方

标签 flutter scrollview flutter-layout flutter-sliver customscrollview

我希望在滚动屏幕时在应用程序下方放置一个小部件。
屏幕包含一个具有灵活空间的 float 应用栏 (sliverappbar),其下方是一个具有任何容器或选项卡 View 的容器。
链接中的视频是我想要的效果示例。

最佳答案

好吧,我想我现在明白你了。你需要实现一个 CustomScrollView

CustomScrollView(
              slivers: <Widget>[
                SliverAppBar(
                    // Your appbar goes here
                    ),
                SliverPersistentHeader(
                  pinned: true,
                  delegate: PersistentHeader(
                    widget: Row(
                      // Format this to meet your need
                      mainAxisAlignment: MainAxisAlignment.spaceBetween,
                      children: <Widget>[
                        Text('Hello World'),
                        Text('Hello World'),
                        Text('Hello World'),
                      ],
                    ),
                  ),
                ),
              ],
            ),

为 Persistent header 创建一个新类,它扩展了 SliverPersistentHeaderDelegate,如下所示:
class PersistentHeader extends SliverPersistentHeaderDelegate {
  final Widget widget;

  PersistentHeader({this.widget});

  @override
  Widget build(
      BuildContext context, double shrinkOffset, bool overlapsContent) {
    return Container(
      width: double.infinity,
      height: 56.0,
      child: Card(
        margin: EdgeInsets.all(0),
        color: Colors.white,
        elevation: 5.0,
        child: Center(child: widget),
      ),
    );
  }

  @override
  double get maxExtent => 56.0;

  @override
  double get minExtent => 56.0;

  @override
  bool shouldRebuild(SliverPersistentHeaderDelegate oldDelegate) {
    return true;
  }
}

如果您遇到任何其他问题,请告诉我。

关于flutter - 如何在 flutter 的 ScrollView 中将容器或任何其他小部件固定在应用栏下方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61127826/

相关文章:

firebase - Flutter:构建失败并出现异常

抖动模糊图像边缘不受影响(仅限 iOS)

android - 垂直自动滚动 TextView

android - 如何在 ScrollView 顶部添加 float 操作按钮

android - 如何在 Android 上为 TextView 和 ImageView 内容更改设置动画?

flutter - 如何使用 slider 指示器更改 flutter 上的字体大小?

dart - 使用 Flutter 单击按钮后的网络请求

android - 如何在 flutter 中创建 SharedPreferences 的单例类

mobile - Flutter - 通知 Column 内的兄弟小部件

flutter - 如何获取父Widget的宽度