Постоянная проблема, с которой я сталкиваюсь в моем учебном путешествии по Flutter, заключается в том, что GridView действительно требует родительского контейнера с указанной высотой.

Как лучше всего увеличить высоту, чтобы она растягивалась настолько, насколько это необходимо, не вызывая при этом проблем с переполнением или неприятного пользовательского интерфейса?

Вот несколько методов, которые я пробовал:

double.infinity - этот не работает должным образом, GridView вообще не отображается.

Container(
  height: double.infinity,
  child: GridView.builder(
    ....
)

MediaQuery.of (context) .size.height - он тоже не работает должным образом, возникают проблемы с переполнением и просто не работает полностью, когда отображаются другие элементы (например, в столбце).

Container(
  height: MediaQuery.of(context).size.height,
  child: GridView.builder(
    ....
)

фиксированный размер - он не допускает никакой гибкости и не идеален для скорости отклика.

Container(
  height: 800,
  child: GridView.builder(
    ....
)

Спасибо.

0
Giulia 12 Фев 2021 в 09:51

1 ответ

Лучший ответ

Вместо использования Container попробуйте использовать виджет Flexible.

1
beast 12 Фев 2021 в 06:53