【发布时间】:2020-04-17 17:47:07
【问题描述】:
我有一个 MotionLayout,它基本上包含一个图像和一个 ViewPager。 ViewPager 渲染一个带有 RecyclerView 的片段。 起初,图像具有正常大小,当我向上拖动时,图像会减小其大小并且 ViewPager(其中包含 RecyclerView)会展开。
问题是MotionLayout一直拦截滚动动作,所以如果RecyclerView展开,用户向下滚动,MotionLayout会展开图片,而不是让RecyclerView滚动。
我期望的是,只有当 RecyclerView 到达第一个元素时,MotionLayout 才会展开顶部图像,在这种情况下,由于 RecyclerView 无法再滚动,滚动动作将由 MotionLayout 管理。
我知道在 MotionLayout 中我可以设置属性 moveWhenScrollAtTop="true" 来获得该行为,但这仅在只有 RecyclerView 时才有效,但如果 RecyclerView 在ViewPager。
有人遇到过这个问题吗?
【问题讨论】:
-
如果有人遇到同样的问题并碰到我的问题,请阅读:https://stackoverflow.com/questions/60922207/motion-layout-with-swipe-gesture-swiperefreshlayout-recyclerview-bug-wrong-b 这是一个错误,并且已在 google 的问题跟踪器中创建了一个问题。
标签: android android-fragments android-recyclerview android-viewpager android-motionlayout