2

我正在尝试创建一个可拖动的底部工作表,该工作表将具有设置的页眉和页脚。在这些之间,正文/内容会有所不同。可能有一个空状态或可能有一个数据列表。用户也应该能够将此工作表扩展到屏幕顶部。

这是一个基本示例,我可以在其中查看所有数据,但无法将其拖动到最大大小。我只能在页眉和页脚之间的 ListView 内滚动。

如何更新它,以便我仍然可以拖动工作表以捕捉到顶部、返回到中间或关闭?

代码示例:

void _showDraggableSheet(context) {
    showModalBottomSheet(
      context: context,
      isScrollControlled: true,
      useRootNavigator: true,
      builder: (_) {
        return DraggableScrollableSheet(
          expand: false,
          initialChildSize: 0.65,
          minChildSize: 0.65,
          maxChildSize: 0.9,
          builder: (_, controller) {
            return Container(
              color: Colors.black,
              child: Column(
                crossAxisAlignment: CrossAxisAlignment.stretch,
                mainAxisSize: MainAxisSize.min,
                children: <Widget>[
                  _buildHeader(),
                  _buildContent(),
                  _buildFooter(),
                ],
              ),
            );
          },
        );
      },
    );
  }


  Widget _buildContent() {
    return Expanded(
      child: Container(
        color: Colors.green,
        child: ListView.builder(
          itemCount: 100,
          itemBuilder: (_, i) => ListTile(title: Text('Item $i')),
        ),
      ),
    );
  }
4

0 回答 0