#flutter #dart #flutter-animation
#трепетать #дротик #флаттер-анимация
Вопрос:
У меня проблема со прокруткой для элемента SingleChildScrollView. Мое представление состоит из следующего: Картинка, Изображение с одним элементом (список элементов 2, 3,4 на картинке), виджет анимированного размера, который содержит либо список, либо ничего. По умолчанию мой виджет AnimatedSize ничего не содержит и не отображается таким образом :
И когда он обновляется, чтобы содержать список, прокрутка моего представления Singlechildscroll сдвигается. Как это :
I would like the scroll to stay at the end like that:
Я знаю, что могу вызвать событие для автоматической прокрутки до конца, но это не так гладко. Я думаю, что есть лучшее решение. В надежде найти ответ здесь Вот мой код:
Column( children: [ SizedBox( height: 200, child: ClipRRect( borderRadius: BorderRadius.circular(20.0), child: Image.asset( imagePath, width: MediaQuery.of(context).size.width, ), ), ), Expanded( child: SingleChildScrollView( controller: scrollController, physics: const BouncingScrollPhysics(), child: Column( children:[ ...listInterractionShow.map((e) =gt; e.getWidget(context)).toList(), ] ), ), ), AnimatedSize( curve: Curves.fastOutSlowIn, duration: const Duration(milliseconds: 100), child: currentChoix == null? Container() :Container( decoration: const BoxDecoration( borderRadius: BorderRadius.vertical(top: Radius.circular(20)), color: Colors.white, ), child: Column( children: listChildren() ), ) ) ], ),
Ответ №1:
Я думаю, что вы можете играть с гибкими и расширенными, придавая им большую гибкость, чем та, которую вы хотите показать больше на экране