繁体   English   中英

Flutter - 使用 AnimatedSize 保持 SingleChildScrollView 的滚动

[英]Flutter - Keep scroll of SingleChildScrollView with AnimatedSize

我有一个 SingleChildScrollView 元素的滚动问题。 我的视图组成如下:一张图片,一个 SingleChildScrollView(图中的 Elem 列表 2, 3,4),一个包含列表或不包含任何内容的 AnimatedSize 小部件。 默认情况下,我的 AnimatedSize 小部件不包含任何内容,并且不可见:

在此处输入图像描述

当它更新为包含一个列表时,我的 SingleChildScrollView 的滚动会移动。 像那样: 在此处输入图像描述

我希望滚动保持在最后:

在此处输入图像描述

我知道我可以触发一个事件来自动滚动到最后,但这并不顺利。 我认为有更好的解决方案。 希望在这里找到答案这是我的代码:

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) => 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()
                  ),
                )
            )
          ],
        ),

我认为您可以使用灵活和扩展的方式,为它们提供比您想在屏幕上显示更大的方式更大的弹性

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM