public override void OnBeginDrag(PointerEventData eventData) { if (base.horizontal == false && Math.Abs(eventData.delta.x) > Math.Abs(eventData.delta.y)) { _eDragDirection = EDrageDirection.Horizontal; _fScrollDelta = 0f; } else if (base.vertical == false && Math.Abs(eventData.delta.x) < Math.Abs(eventData.delta.y)) { _eDragDirection = EDrageDirection.Vertical; _fScrollDelta = 0f; } else { _eDragDirection = EDrageDirection.None; } if (_eDragDirection != EDrageDirection.None) { OnDragBegin_OtherSide?.Invoke(new DragEventMsg(eventData, _fScrollDelta, Calculate_NormalizeDelta())); } else { base.OnBeginDrag(eventData); } }
public override void OnEndDrag(PointerEventData eventData) { if (_eDragDirection != EDrageDirection.None) { OnDragEnd_OtherSide?.Invoke(new DragEventMsg(eventData, _fScrollDelta, Calculate_NormalizeDelta())); } else { base.OnEndDrag(eventData); } _eDragDirection = EDrageDirection.None; }