using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.EventSystems;
/// <summary>
/// UI面板拖动
/// </summary>
public class TestForDrag : MonoBehaviour, IDragHandler
{
private GameObject drag_icon;
void Awake()
{
drag_icon = GameObject.FindGameObjectWithTag("UI_Drag");//设置标签
}
public void OnDrag(PointerEventData eventData)
{
Vector3 pos;
if (RectTransformUtility.ScreenPointToWorldPointInRectangle(drag_icon.GetComponent<RectTransform>(),
eventData.position, Camera.main, out pos))
{
drag_icon.transform.position = pos;
}
}
using System.Collections;
using UnityEngine.UI;
using UnityEngine.EventSystems;
/// <summary>
/// UI面板拖动
/// </summary>
public class TestForDrag : MonoBehaviour, IDragHandler
{
private GameObject drag_icon;
void Awake()
{
drag_icon = GameObject.FindGameObjectWithTag("UI_Drag");//设置标签
}
public void OnDrag(PointerEventData eventData)
{
Vector3 pos;
if (RectTransformUtility.ScreenPointToWorldPointInRectangle(drag_icon.GetComponent<RectTransform>(),
eventData.position, Camera.main, out pos))
{
drag_icon.transform.position = pos;
}
}
}
设置Canvas相机照射,不然拖动时会出现面板到左下角不动的现象