Как правильно установить высоту для списка - PullRequest
0 голосов
/ 21 октября 2018

У меня есть столбец с 3 детьми.Третий ребенок имеет ListView.Как установить высоту ListView таким образом, чтобы он не переполнял экран.Я не хочу вычислять высоту, вычитая высоту двух других детей из высоты экрана.Я пробовал LayoutBuilder, но ограничение блока, которое я получаю, имеет бесконечность как максимальную высоту (BoxConstraints (0.0 <= w <= 360.0, 0.0 <= h <= Infinity)) </p>

Мое дерево виджетов выглядит примерно так

Container(  //Container A
 height: MediaQuery.of(context).size.height,
 child:Column(children:[
    TitleWidget(),
    SubtitleWidget(),
    Container( //Container B
      child:ListView(children:getChildren())
    )        
 ])
)

Высота контейнера A - это высота экрана.Но высота Контейнера B должна быть Высота экрана - высота TitleWidget () - высота SubtitleWidget ().Если я не установил высоту контейнера B явно, я получаю «A RenderFlex переполнен X пикселями внизу».

Мне не хватает чего-то действительно очевидного здесь?

спасибо

Ответы [ 2 ]

0 голосов
/ 22 октября 2018

У меня была похожая проблема.В моем случае я сохранил Container и в своем ListView я добавил shrinkWrap: true,, что уменьшит размер ListView до общей высоты всех его дочерних элементов.

И physics: NeverScrollableScrollPhysics(), В частности, я не хочу, чтобы ListView прокручивал элементы столбца, но я хочу, чтобы все прокручивалось вместе.

0 голосов
/ 21 октября 2018

Оберните вид списка с помощью расширенного виджета вместо виджета «Контейнер».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...