リポジトリ
使用例
using Kogane; using UnityEngine; using UnityEngine.EventSystems; public class Example : MonoBehaviour, IPointerDownHandler, IPointerUpHandler { private UIColliderSizeAdjuster m_adjuster; private void Awake() { m_adjuster = new UIColliderSizeAdjuster( transform ); } public void OnPointerDown( PointerEventData eventData ) { UpdateScale( true ); } public void OnPointerUp( PointerEventData eventData ) { UpdateScale( false ); Debug.Log( "ピカチュウ" ); } private void UpdateScale( bool isDown ) { var scale = isDown ? 0.8f : 1; transform.localScale = new Vector3( scale, scale, 1 ); m_adjuster.OnDown( isDown, scale, 1.1f ); } }

- ボタンを押した時にボタンが縮小してカーソルがボタンの範囲外になってしまっても
カーソルを離した時に OnPointerUp 関数が正常に呼び出れるようになります