using UnityEngine;
using UnityEngine.EventSystems;
public class DragUIMove : MonoBehaviour, IPointerDownHandler, IDragHandler, IPointerUpHandler,IEndDragHandler{
public RectTransform canvas;
private RectTransform imgRect;
Vector2 offset = new Vector3();
private bool UICanMove = false; //判断当前的拖拽是否可以让整个UI移动,鼠标在其他按钮上时拖拽,避免造成错误。
// Use this for initialization
void Awake()
{
imgRect = GetComponent<RectTransform>();
}
public void OnPointerDown(PointerEventData eventData)
{
Vector2 mouseDown = eventData.position;
Vector2 mouseUguiPos = new Vector2();
bool isRect = RectTransformUtility.ScreenPointToLocalPointInRectangle(canvas, mouseDown, eventData.enterEventCamera, out mouseUguiPos);
if (isRect)
{
offset = imgRect.anchoredPosition - mouseUguiPos;
UICanMove = true;
}
}
public void OnDrag(Po
UGUI跟随鼠标移动
最新推荐文章于 2023-08-25 21:07:35 发布