「Unity/UIクリック」の版間の差分
提供: 初心者エンジニアの簡易メモ
行1: | 行1: | ||
− | UIにクリックイベントを追加 | + | |
+ | ==UIにクリックイベントを追加(その1)== | ||
+ | 以下のクラスをClickableContent.csで作り、クリックさせたい、UI部品に予めGUIでAddComponentしておく。 | ||
+ | <pre> | ||
+ | using UnityEngine; | ||
+ | using UnityEngine.EventSystems; | ||
+ | |||
+ | public class ContentClickListener : MonoBehaviour, IPointerClickHandler | ||
+ | { | ||
+ | |||
+ | public void OnPointerClick(PointerEventData eventData) | ||
+ | { | ||
+ | Debug.Log("クリックされたよ。"); | ||
+ | } | ||
+ | } | ||
+ | </pre> | ||
+ | 参考:https://pafu-of-duck.hatenablog.com/entry/2018/08/18/224254 | ||
+ | |||
+ | ==UIにクリックイベントを追加(その2)== | ||
<pre> | <pre> | ||
GameObject colorImage = GameObject.Find("ColorImage"); | GameObject colorImage = GameObject.Find("ColorImage"); | ||
行11: | 行29: | ||
</pre> | </pre> | ||
− | + | ただし、ScrollView内のオブジェクトに適用すると、スクロールが無効化されてしまうので、その1を推奨 |
2020年6月1日 (月) 22:06時点における版
UIにクリックイベントを追加(その1)
以下のクラスをClickableContent.csで作り、クリックさせたい、UI部品に予めGUIでAddComponentしておく。
using UnityEngine; using UnityEngine.EventSystems; public class ContentClickListener : MonoBehaviour, IPointerClickHandler { public void OnPointerClick(PointerEventData eventData) { Debug.Log("クリックされたよ。"); } }
参考:https://pafu-of-duck.hatenablog.com/entry/2018/08/18/224254
UIにクリックイベントを追加(その2)
GameObject colorImage = GameObject.Find("ColorImage"); EventTrigger trigger = colorImage.AddComponent<EventTrigger>(); EventTrigger.Entry entry = new EventTrigger.Entry(); entry.eventID = EventTriggerType.PointerClick; entry.callback.AddListener(delegate { SetColor(colorName); }); trigger.triggers.Add(entry);
ただし、ScrollView内のオブジェクトに適用すると、スクロールが無効化されてしまうので、その1を推奨