Я уже несколько раз сталкивался с довольно большой стеной во Flutter. Анимация или создание виджетов, которые зависят от других виджетов, чтобы получить их размер / положение.
Несколько примеров моих худших кошмаров во время трепета: динамическая привязка виджетов друг к другу. В css у нас было бы это:
.root {
display: flex;
background: grey;
padding: 4px;
}
.root > div {
background: lightgrey;
margin-right: 5px;
padding: 5px;
}
<div class="root">
<div>
dynamic height
<br/>
dynamic width
<br/>
fat
<br/>
super fat
</div>
<div>
dynamic width
<br/>
dynamic height
</div>
</div>
- родитель принимает всю ширину (не важно).
- родитель принимает рост самых больших детей.
- дети с меньшей высотой растягиваются, чтобы соответствовать родителю
- дети располагаются рядом друг с другом
Во флаттере, я не думаю, что у нас могут быть все 4 очка сразу.
А что, если у нас есть 2 из этого списка и анимация, в которой один элемент переходит из одного списка в другой? пример
Другой пример. Что, если бы мы хотели иметь SlideTransition
, который будет выровнен по вертикали с другим виджетом, не имеющим ничего общего? Нравится :
Это совершенно случайные примеры. Мне не нужно воспроизводить одно и то же. Настоящий вопрос здесь: есть ли общий способ сделать что-то подобное (получить размер / положение экрана)? Что-то, что не будет специфичным для этого варианта использования и будет легко поддерживаться позже?