public override void OnBeginDrag(PointerEventData eventData) { if (!horizontal && Math.Abs(eventData.delta.x) > Math.Abs(eventData.delta.y)) { routeToParent = true; } else if (!vertical && Math.Abs(eventData.delta.x) < Math.Abs(eventData.delta.y)) { routeToParent = true; } else { routeToParent = false; } if (routeToParent) { parentScrollRect?.OnBeginDrag(eventData); } else { base.OnBeginDrag(eventData); } }
public void OnBeginDrag(PointerEventData eventData) { MainScroll.OnBeginDrag(eventData); }
public void OnBeginDrag(PointerEventData eventData) { Vector2 touchDeltaPosition = Vector2.zero; #if UNITY_EDITOR float delta_x = Input.GetAxis("Mouse X"); float delta_y = Input.GetAxis("Mouse Y"); touchDeltaPosition = new Vector2(delta_x, delta_y); #elif UNITY_ANDROID || UNITY_IPHONE touchDeltaPosition = Input.GetTouch(0).deltaPosition; #endif if (isVertical) { if (Mathf.Abs(touchDeltaPosition.x) > Mathf.Abs(touchDeltaPosition.y)) { isSelf = true; var canvas = FindInParents <Canvas>(gameObject); if (canvas == null) { return; } m_DraggingCard = createCard(); m_DraggingCard.transform.SetAsLastSibling(); m_DraggingCard.AddComponent <CIgnoreRayCast>(); if (dragOnSurfaces) { m_DraggingPlane = transform as RectTransform; } else { m_DraggingPlane = canvas.transform as RectTransform; } SetDraggedPosition(eventData); if (m_OnBeginDragCallBack != null) { m_OnBeginDragCallBack(); } } else { isSelf = false; if (m_ScrollRect != null) { m_ScrollRect.OnBeginDrag(eventData); } } } else { if (Mathf.Abs(touchDeltaPosition.x) < Mathf.Abs(touchDeltaPosition.y)) { isSelf = true; var canvas = FindInParents <Canvas>(gameObject); if (canvas == null) { return; } m_DraggingCard = createCard(); m_DraggingCard.transform.SetAsLastSibling(); m_DraggingCard.AddComponent <CIgnoreRayCast>(); if (dragOnSurfaces) { m_DraggingPlane = transform as RectTransform; } else { m_DraggingPlane = canvas.transform as RectTransform; } SetDraggedPosition(eventData); if (m_OnBeginDragCallBack != null) { m_OnBeginDragCallBack(); } } else { isSelf = false; if (m_ScrollRect != null) { m_ScrollRect.OnBeginDrag(eventData); } } } if (m_OnBeginScroll != null) { m_OnBeginScroll(); } }
public void OnPointerDown(PointerEventData eventData) { parent.OnBeginDrag(eventData); }