コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】UnityEvent で RemoveAllListeners してから AddListener する拡張メソッド

ソースコード

using System;
using UnityEngine.Events;

public static class UnityEventExt
{
    public static void SetListener( this UnityEvent self, Action call )
    {
        self.RemoveAllListeners();
        self.AddListener( () => call() );
    }

    public static void SetListener( this UnityEvent self, UnityAction call )
    {
        self.RemoveAllListeners();
        self.AddListener( call );
    }
}

使い方

button.onClick.SetListener( () => {} );