unity检测鼠标是否点在了某个UI上

        if (Input.GetMouseButtonUp(1))//右键
        {
            RectTransform rctTr = _TreeView.gameObject.GetComponent<RectTransform>();
            //如果Canvas为Overlay不需要传Camera参数,否则需要传Camera
            //Canvas canvas = GetComponent<Canvas>();
            //Camera camera = canvas.renderMode == RenderMode.ScreenSpaceOverlay ? null : Camera.main;
            bool isContain = RectTransformUtility.RectangleContainsScreenPoint(rctTr, Input.mousePosition, null);
            if(isContain)
            {
                Debug.Log("点上了");
            }
            else
            {
                Debug.Log("没点上");
            }            
        }

猜你喜欢

转载自blog.csdn.net/zouxin_88/article/details/85101644
今日推荐