C#
Unity
uGUI

Unity uGUIをドラッグで動かしてステージを選ぶ

Unity uGUIをドラッグで動かすには

完成イメージです.
h5fyv-6t500.gif

動かすためには,
IDragHandlerのインターフェースを継承する必要がある.
OnDrag関数はドラッグが発生しているとき,カーソルが移動するたびに呼び出される.

以下のようなスクリプトを作成する.

using UnityEngine;
using UnityEngine.EventSystems;

public class SlideController : MonoBehaviour, IDragHandler {

    public RectTransform m_rectTransform = null;

    public void OnDrag(PointerEventData eventData)
    {
        m_rectTransform.position += new Vector3(eventData.delta.x*0.01f, 0f, 0f);
    }
}

OnDrag関数のPointerEventData からドラッグのデータを受け取り,動かしたいオブジェクトのRectTransformをいじると動きます.

このスクリプトを動かしたいオブジェクトに着けてRectTransformに自身を入れてあげれば動かすことが可能です.

スクリーンショット 2018-11-08 13.44.51.png