我正在尝试实现类似于Google Maps应用程序的滚动效果。基本上,我的层次结构如下:
Stack
child#1 : Container with Scroll-able Text (as background) covers screen height.
child#2 : Container drag-able vertically (size=screen height & sits close to the bottom e.g. top: screen-height
- 50)
child of child#2: ListView
现在,如果用户开始从下往上拖动,则子级#2开始向上移动并开始覆盖越来越多的子级#1,并上升到屏幕顶部,整个子级# 1被覆盖。如果用户继续向上拖动,则ListView应该开始向上滚动。
我曾尝试使用Flutter的SliverList,但一方面,我不希望它附带标题,其次,我希望能够使child#1滚动(只要不被child#覆盖) 2)。
我正在考虑使ListView最初不可滚动,并且当child#2到达顶部时,通过捕获ScrollNoticiations将ListView切换为可滚动。尽管我不确定这是否可行。
有没有更好的方法来实现相同的效果?
谢谢!