EnergyEfficiencyManagement/Assets/UIView/UIToolDragView/UIDragItem.cs

32 lines
775 B
C#

using UnityEngine;
using UnityEngine.EventSystems;
public class UIDragItem : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
{
private CanvasGroup canvasGroup;
private Transform originParent;
void Awake()
{
canvasGroup = GetComponent<CanvasGroup>();
originParent = transform.parent;
}
public void OnBeginDrag(PointerEventData eventData)
{
canvasGroup.blocksRaycasts = false;
transform.SetParent(transform.root); // ×îÉϲã
}
public void OnDrag(PointerEventData eventData)
{
transform.position = eventData.position;
}
public void OnEndDrag(PointerEventData eventData)
{
canvasGroup.blocksRaycasts = true;
transform.SetParent(originParent);
}
}