- デリゲートの宣言: まず、デリゲートを宣言してイベントハンドラとして使用するメソッドのシグネチャを指定します。たとえば、以下のようにデリゲートを宣言できます。
public delegate void MyEventHandler(object sender, EventArgs e);
- イベントの宣言と初期化: デリゲートを使用してイベントを宣言し、初期化します。以下のようにイベントを宣言できます。
public event MyEventHandler MyEvent;
- イベントハンドラの作成: イベントハンドラは、イベントが発生した時に実行されるメソッドです。イベントハンドラを作成し、デリゲートに登録します。以下はイベントハンドラの例です。
private void HandleEvent(object sender, EventArgs e)
{
// イベントが発生した時に実行される処理
}
- イベントの発火: イベントを発火させるために、以下のようにイベントを呼び出します。
MyEvent?.Invoke(this, EventArgs.Empty);
- イベントの購読: イベントを購読するために、イベントハンドラをデリゲートに登録します。以下はイベントの購読の例です。
MyEvent += HandleEvent;
- イベントの購読の解除: イベントの購読を解除する場合は、以下のようにイベントハンドラをデリゲートから削除します。
MyEvent -= HandleEvent;
以上がC# Unityでのデリゲートイベントの基本的な使用方法です。これらのステップを組み合わせて、異なるシナリオでデリゲートイベントを活用することができます。