Flutter 什么';GestureDetector中delta和primary delta的区别是什么? 手势检测器( onVerticalDragUpdate:(详细信息){ var dy=details.delta.dy; var primaryDy=details.primaryDelta; }, )

Flutter 什么';GestureDetector中delta和primary delta的区别是什么? 手势检测器( onVerticalDragUpdate:(详细信息){ var dy=details.delta.dy; var primaryDy=details.primaryDelta; }, ),flutter,Flutter,我无法找出常规三角洲和初级三角洲之间的区别,两者似乎都做相同的工作。有人能解释这两个三角洲之间的区别吗?(像往常一样,文档不是很清楚,至少对我来说是这样) 三角洲→ 偏移指针在坐标中移动的量 自上次更新以来事件接收器的空间 也就是说,自上次指针接触以来拖动所覆盖的距离三角形表示水平距离的dx和垂直距离的dy。 原始三角洲→ 将指针沿方向移动的量增加一倍 事件接收器坐标空间中的主轴,自 以前的更新 primaryDelta仅给出拖动的一个主要方向上的绝对距离,这意味着如果拖动主要在水平轴上(仅Ge

我无法找出常规三角洲和初级三角洲之间的区别,两者似乎都做相同的工作。有人能解释这两个三角洲之间的区别吗?(像往常一样,文档不是很清楚,至少对我来说是这样)

三角洲→ 偏移指针在坐标中移动的量 自上次更新以来事件接收器的空间

也就是说,自上次指针接触以来拖动所覆盖的距离<代码>三角形表示水平距离的dx和垂直距离的dy。

原始三角洲→ 将指针沿方向移动的量增加一倍 事件接收器坐标空间中的主轴,自 以前的更新

primaryDelta仅给出拖动的一个主要方向上的绝对距离,这意味着如果拖动主要在水平轴上(仅GestureDragUpdateCallback+水平),则此值表示水平轴上的拖动距离。如果拖动是垂直轴(仅GestureDragUpdateCallback+垂直),则此值表示垂直轴上的拖动量


注意:如果GestureDragUpdateCallback用于二维拖动(例如平移),则此值为空。

Offset delta:自上次更新以来指针在事件接收器坐标空间中移动的量。。double primaryDelta:自上次更新以来,指针在事件接收器坐标空间中沿主轴移动的量。文档说:“如果GestureDragUpdateCallback用于一维拖动(例如,水平或垂直拖动),则此值包含沿主轴的增量分量(例如,分别为水平或垂直)-是的,这与水平/垂直拖动回调的
delta.dx/dy
相同看起来像是任何移动与主轴移动。请看:@pskink谢谢你,先生,这就是我所想的。嗨,谢谢你的回答,但在拖动时没有绝对距离这样的东西。主delta确实是特定阻力的规则增量。例如,如果阻力是垂直的,则主增量和由
delta.dy
给出的规则增量将为您提供相同的值,并且相同的值适用于水平阻力。