Android 第一次以相反方向滑动时MotionLayout OnSwipe过渡故障
我使用MotionLayout来实现一个简单的动画:我的MotionLayout中有两个视图,一个约束到顶部的条和一个约束到底部的RecyclerView。当我滚动RecyclerView时,顶视图应该被推出。(像一个正在折叠的工具栏)我的MotionScene如下所示:Android 第一次以相反方向滑动时MotionLayout OnSwipe过渡故障,android,android-constraintlayout,android-motionlayout,Android,Android Constraintlayout,Android Motionlayout,我使用MotionLayout来实现一个简单的动画:我的MotionLayout中有两个视图,一个约束到顶部的条和一个约束到底部的RecyclerView。当我滚动RecyclerView时,顶视图应该被推出。(像一个正在折叠的工具栏)我的MotionScene如下所示: <Transition motion:constraintSetEnd="@+id/end" motion:constraintSetStart="@+id/start"> <OnS
<Transition
motion:constraintSetEnd="@+id/end"
motion:constraintSetStart="@+id/start">
<OnSwipe
motion:dragDirection="dragUp"
motion:moveWhenScrollAtTop="false"
motion:touchAnchorId="@+id/table_view" />
</Transition>
<ConstraintSet android:id="@+id/start">
<Constraint
android:id="@+id/table_view"
android:layout_width="0dp"
android:layout_height="0dp"
motion:layout_constraintBottom_toBottomOf="parent"
motion:layout_constraintEnd_toEndOf="parent"
motion:layout_constraintStart_toStartOf="parent"
motion:layout_constraintTop_toBottomOf="@+id/filters" />
<Constraint
android:id="@+id/filters"
android:layout_width="0dp"
android:layout_height="48dp"
motion:layout_constraintEnd_toEndOf="parent"
motion:layout_constraintStart_toStartOf="parent"
motion:layout_constraintTop_toTopOf="parent" />
</ConstraintSet>
<ConstraintSet android:id="@+id/end">
<Constraint
android:id="@+id/table_view"
android:layout_width="0dp"
android:layout_height="0dp"
motion:layout_constraintBottom_toBottomOf="parent"
motion:layout_constraintEnd_toEndOf="parent"
motion:layout_constraintStart_toStartOf="parent"
motion:layout_constraintTop_toTopOf="parent" />
<Constraint
android:id="@+id/filters"
android:layout_width="0dp"
android:layout_height="48dp"
android:translationY="-48dp"
motion:layout_constraintEnd_toEndOf="parent"
motion:layout_constraintStart_toStartOf="parent"
motion:layout_constraintTop_toTopOf="parent" />
</ConstraintSet>
过滤器是俯视图,表格视图是RecyclerView。这部动画片很有魅力,只是有一个相当大的问题。当我第一次进入屏幕并开始向下拖动RecyclerView时,整个俯视图正在消失。如果我开始向上滚动,一切都会恢复正常,我无法再重现故障。我不知道我是否做错了什么,或者MotionLayout中有一个bug
注意:我需要转换用于特定目的。如果我将onswip方向更改为dragDown,当我开始向上滚动时也会发生同样的情况。这是MotionLayout中的已知错误,请参阅以获取参考。它将在阿尔法4中修复,尼古拉斯提到预计将在本月发布。看起来它在贝塔3中完全修复了:)