Android 坐标布局、嵌套滚动视图和过滚动

Android 坐标布局、嵌套滚动视图和过滚动,android,android-coordinatorlayout,android-appbarlayout,android-nestedscrollview,Android,Android Coordinatorlayout,Android Appbarlayout,Android Nestedscrollview,我想创造一些我在任何地方都找不到的东西。。。至少是我想要的方式 下面是我想要实现的场景: 我使用了AppBarLayout(ABL)和NestedScrollView(NSV)的典型坐标布局,因此当我在NSV/ABL中滚动时,ABL上的视差很好 问题是NSV只占据屏幕底部的一小部分。如果我向上滚动,它会从屏幕底部“分离”。而且,如果我把ABL拖得太长,它会保持得太大 我想要的是保持NSV在原来的位置,但允许overscroll(在修补后恢复状态) 另外,如何平滑滚动NSV特定数量?我尝试过使用b

我想创造一些我在任何地方都找不到的东西。。。至少是我想要的方式

下面是我想要实现的场景:

我使用了AppBarLayout(ABL)和NestedScrollView(NSV)的典型坐标布局,因此当我在NSV/ABL中滚动时,ABL上的视差很好

问题是NSV只占据屏幕底部的一小部分。如果我向上滚动,它会从屏幕底部“分离”。而且,如果我把ABL拖得太长,它会保持得太大

我想要的是保持NSV在原来的位置,但允许overscroll(在修补后恢复状态)

另外,如何平滑滚动NSV特定数量?我尝试过使用behavior.onNestedFling和behavior.onNestedPreScroll,但第一个使用速度,而不是平移,第二个不设置动画

有人能告诉我如何实现这一目标的正确方向吗

提前感谢,, 若昂

编辑:这里需要一些澄清:

我有一个CoordinatorLayout(红方块),一个AppBarLayout,里面有一个ImageView(绿色部分)和一个NestedScrollView(白色部分)

  • NestedScrollView的内容具有较小的高度(假设其内部具有较小的视图)

  • AppBarLayout的固定大小为“300dp”

情况:

  • 如果我向上滚动appbarlayout或nestedscrollview,nestedscrollview的内容会向上滚动(从而折叠appbarlayout)。如果nestedscrollview中没有足够的内容,我不希望出现这种情况。但我确实希望它过度滚动,并在释放按键后返回到原始位置

  • 若我向下滚动,什么也不会发生(若appbarlayout有固定的高度),并且我还希望它在释放按键后过滚动并返回到原始位置

加上:

  • 当某些事件发生时,我希望通过编程将appbarlayout向上或向下滚动固定数量的“dp”。我尝试使用behavior.onNestedFling和behavior.onNestedPreScroll,但这些方法要么不滚动固定数量,要么不设置滚动动画

你能做一个小的模式来描述这个情况吗?很难很好地理解这个情况编辑了这个问题,希望能有所帮助:)现在我更好地理解了。但正如我所见,您有很多需求,我担心使用coordinatorLayout无法解决所有问题。我认为你必须定制你的布局和代码来满足你的需求,我有一些解决方案,但现在我真的需要睡觉,所以我明天会看一看Hanks David,等待你的反馈!“nestedscrollview中没有足够的内容”到底是什么意思?