Unity++blog.

UnityやC#とかについて学習したことを書いてます

Delegateでイベントを通知する

 

イベントは多分Unityの方で前にも書いたけど便利なので、また書きます。

英語学習アプリを作る際に使いました!

 

カウントが規定数以上になったら、その事を通知して処理をするという流れで使いました。

 

まずDelegateの宣言をします。 TestEventの場所へ任意のイベント名を付けます。

(TestClass.cs)

public event EventHandler TestEvent = delegate { };

 

次に発生させたい場所へ書きます。()内で特に値を送らずにイベントがあった旨だけ通知します。

if(count>3)

  {

     TestEvent (this, EventArgs.Empty);

  }

次に受け取る側の書き方です。

(受け取りたいクラスへ書く)

TestClass.TestEvent += delegate (object sender, EventArgs e)
 {

  //実行したい処理

 };