Example #1
0
 /// <summary>
 /// 鼠标抬起事件
 /// </summary>
 /// <param name="eventData"></param>
 public void OnPointerUp(PointerEventData eventData)
 {
     geoController.HandleClickLockButton(0);
     isPinterDown = false;
     StopAllCoroutines();
     SetActiveEdgeImage(false);
     uiEdge = UIEdge.None;
     StartCoroutine(edgeJudge());
 }
Example #2
0
 /// <summary>
 /// 鼠标退出UI的事件
 /// </summary>
 /// <param name="eventData"></param>
 public void OnPointerExit(PointerEventData eventData)
 {
     if (isPinterDown == false)
     {
         StopAllCoroutines();
         SetActiveEdgeImage(false);
         uiEdge = UIEdge.None;
     }
 }
Example #3
0
        /// <summary>
        /// 边缘判断协程
        /// </summary>
        /// <returns></returns>
        IEnumerator edgeJudge()
        {
            yield return(new WaitForEndOfFrame());

            while (true)
            {
                RectTransformUtility.ScreenPointToLocalPointInRectangle(canvas.transform as RectTransform,
                                                                        Input.mousePosition,
                                                                        canvas.worldCamera, out v2PointEnter);
                // Debug.Log("_pos:" + v2PointEnter);

                uiEdge = GetCurrentEdge(v2PointEnter);
                Debug.Log("edge:" + uiEdge.ToString());

                SetActiveEdgeImage(false);
                if (canResize)
                {
                    switch (uiEdge)
                    {
                    case UIEdge.None:
                        SetActiveEdgeImage(false);
                        break;

                    case UIEdge.Left:
                        Left_Image.gameObject.SetActive(true);
                        Left_Image.localPosition = new Vector3(Left_Image.localPosition.x, v2PointEnter.y - panelRectTransform.localPosition.y, Left_Image.localPosition.z);
                        break;

                    case UIEdge.Down:
                        Down_Image.gameObject.SetActive(true);
                        Down_Image.localPosition = new Vector3(v2PointEnter.x - panelRectTransform.localPosition.x, Down_Image.localPosition.y, Down_Image.localPosition.z);
                        break;

                    default:
                        SetActiveEdgeImage(false);
                        break;
                    }
                }
                yield return(new WaitForEndOfFrame());
            }
        }