본문 바로가기
Programming/Unity

[Unity] 유니티 창 드래그 - 2D Image Drag Window

by 타임박스 2019. 8. 27.
반응형

안녕하세요.

이번에는 Drag Window를 설명드리겠습니다.

사용자가 동적으로 창을 원하는 위치로 변경할때 사용되는 기능입니다.

 

먼저 이동될 창을 하나 만드셔야합니다. (주의 : GameObject에 Image 컴포넌트가 있어야합니다.)

그리고 아래 스크립트를 추가해주세요.

public class DragWindow : MonoBehaviour, IPointerDownHandler, IDragHandler
{
    ///<summary>
    /// 드래그 바에 DragWindow 스크립트를 추가하고
    /// window 변수에 움직이고 싶은 창을 인스펙터에 드래그 한다.
    ///</summary>

    public RectTransform window; //Drag Move Window
    private Vector2 downPosition;

    public void OnPointerDown(PointerEventData data)
    {
        downPosition = data.position;    
    }

    public void OnDrag(PointerEventData data)
    {
        Vector2 offset = data.position - downPosition;
        downPosition = data.position;

        window.anchoredPosition += offset;
    }
}

그 뒤 window 변수에 이동시킬창을 넣어주시면 됩니다. 

 

반응형

댓글