예제 #1
0
        protected virtual void OnCCDragMove(PointerEventData eventData)
        {
            if (!m_InDrag)
            {
                return;
            }

            m_DragTrans.position = CCTool.GetScreenToUIWorldPos(eventData.position);
        }
        protected override void OnCCDragMove(PointerEventData eventData)
        {
            if (!m_InDrag)
            {
                return;
            }

            if (!m_EnableMove && m_ScrollView != null)
            {
                m_ScrollView.OnDrag(eventData);
                return;
            }

            if (CurMoveType == DragMoveType.None)
            {
                CurMoveType = GetMoveType(DragStartPos, eventData.position);
                if (CurMoveType == m_ScrollView.DragType)
                {
                    base.OnButtonPress(false);
                    if (m_ScrollView != null)
                    {
                        m_ScrollView.OnDragStart(eventData);
                    }
                }
                else if (CurMoveType == m_DefaultDragType)
                {
                    m_DragTrans.SetSiblingIndex(1000);
                    m_DragTrans.SetParent(m_ScrollView.DragRootObj.transform);
                    m_DragTrans.position = CCTool.GetScreenToUIWorldPos(eventData.position);
                    OnStartDarg();
                }
            }
            else
            {
                if (CurMoveType == m_DefaultDragType)
                {
                    if (m_EnableSetPos)
                    {
                        m_DragTrans.position = CCTool.GetScreenToUIWorldPos(eventData.position);
                    }
                }
                else
                {
                    m_DragTrans.SetSiblingIndex(startSiblingIndex);
                    if (m_ScrollView != null)
                    {
                        m_ScrollView.OnDrag(eventData);
                    }
                }
            }
        }