'Flutter SliverToBoxAdapter which fits child size

I want to create a scrollable content which include:

  1. A header widget that includes several child widgets - which it's height is unknown
  2. A list of rows widgets

enter image description here

The correct way to do that is using a CustomScrollView, like this:

Widget _buildView(BuildContext context) {
return  (
  slivers: <Widget>[
    SliverToBoxAdapter(
      child: Container(
        height: 128.0,
        child: _buildHeader(context),
      ),
    ),
    _buildList(context),
  ],
);

}

My problem is that my unlike this code sample, my header's height is unknown, and should fit its children's height (which can change).

How do I achieve that?



Solution 1:[1]

Since the Sliver needs to adapt on the header's height, you can consider using ConstrainedBox on your header. Depending on your use case, you can set a minHeight and maxHeight to let the viewport know the widget's size to be rendered.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Omatt