Удалите ключевое слово const
из вашего EdgeInsets
. Ключевое слово const
означает, что Flutter знает значения, которые виджет c будет использовать заранее. Очевидно, что если эти значения зависят от высоты устройства, Flutter не сможет их узнать, пока не выполнит ваш код.
Также рассмотрите возможность использования LayoutBuilder вместо MediaQuery
для получения доступные ограничения пространства. По моему опыту, проще и гибче создавать нужные адаптивные макеты, получая ссылку на доступное пространство экрана, вместо использования фиксированного размера устройства.