不清楚 MotionLayout 参数
Unclear MotionLayout parameters
谁能解释一下 MotionLayout 的 onSwipe 参数 touchAnchorId 和 touchAnchorSide 的作用?这是关于 touchAnchorId
的文档所说的
View that is being moved by the swipe.
这对我来说没有意义,因为在 MotionLayout 上滑动不会移动单个视图。在开始 constraintSet 和结束 constraintSet 之间滑动进度转换。我最初认为 touchAnchorId 会指定一个视图,用户必须拖动该视图才能播放动画,但事实并非如此,MotionLayout 开发团队引入了 touchRegionId 参数。我也不清楚 touchAnchorSide 应该做什么,因为在更改其值时我看不出有任何区别。
onSwipe 将进度从 0 移动到 1
方向(dragDirection=)水平(dragRight/Left/StartEnd)或垂直(dragUp/Down)
如果我将手指沿屏幕拖动 100 个像素,它从 0 移动到 1 多少?
这是大多数其他论证答案的主要问题。
没有锚点,它使用布局的全长。
但是如果你做的是过分的抽取。
您可以使用 dragScale 对其进行调整。但是多少钱?拉动可能会因约束字体而异。
很多时候您希望它表现得好像您正在拉动视图或视图的一侧。在这种情况下,您需要查看视图 (touchAnchorId) 和视图的侧面 (touchAnchorSide)
有时您想限制滑动的工作区域
在这种情况下,您可以使用 limitBoundsTo.
其余的大部分标志都是关于当您抬起手指时要做什么。
它旨在支持的所有用例中都有更多巧妙之处。
谁能解释一下 MotionLayout 的 onSwipe 参数 touchAnchorId 和 touchAnchorSide 的作用?这是关于 touchAnchorId
的文档所说的View that is being moved by the swipe.
这对我来说没有意义,因为在 MotionLayout 上滑动不会移动单个视图。在开始 constraintSet 和结束 constraintSet 之间滑动进度转换。我最初认为 touchAnchorId 会指定一个视图,用户必须拖动该视图才能播放动画,但事实并非如此,MotionLayout 开发团队引入了 touchRegionId 参数。我也不清楚 touchAnchorSide 应该做什么,因为在更改其值时我看不出有任何区别。
onSwipe 将进度从 0 移动到 1 方向(dragDirection=)水平(dragRight/Left/StartEnd)或垂直(dragUp/Down)
如果我将手指沿屏幕拖动 100 个像素,它从 0 移动到 1 多少? 这是大多数其他论证答案的主要问题。 没有锚点,它使用布局的全长。
但是如果你做的是过分的抽取。 您可以使用 dragScale 对其进行调整。但是多少钱?拉动可能会因约束字体而异。
很多时候您希望它表现得好像您正在拉动视图或视图的一侧。在这种情况下,您需要查看视图 (touchAnchorId) 和视图的侧面 (touchAnchorSide)
有时您想限制滑动的工作区域 在这种情况下,您可以使用 limitBoundsTo.
其余的大部分标志都是关于当您抬起手指时要做什么。 它旨在支持的所有用例中都有更多巧妙之处。