MotionLayout 滑动而不捕捉到状态?

Zer*_*tic 2 android android-layout android-motionlayout

我注意到到目前为止所有的 MotionLayouts 总是捕捉到它们的一个结束状态,即使你在动画中途拖动一个视图,停止,然后放手。我想要实现的是让motionlayout 只作用于用户交互和动力。如果用户在动画中间放手,它应该在动量耗尽后完全停止,并且在明确定义的状态之前不会继续插值,这是默认行为。

列表、滚动视图、协调器布局都支持这种“中途”停止,那么为什么运动布局不支持呢?

那么有谁知道如何冻结状态之间的运动布局的进度?它应该适用于时间轴上的任何位置,所以我不想添加额外的状态,因为它需要 100 个状态。

lbe*_*tto 8

添加一个onTouchUp到您的OnSwipe. stop可能是你想要的。decelerate似乎是越野车。如果它连接到滚动视图,则停止更像是一种减速,因为该视图将提供自己的减速。

    <OnSwipe
        app:dragDirection="dragUp"
        app:onTouchUp="stop"
        app:touchAnchorId="@id/scrollView"
        app:touchAnchorSide="top" />
Run Code Online (Sandbox Code Playgroud)

在这里找到:https : //mikescamell.com/motionlayoutquickie-ontouchup/