facebook twitter hatena line email

「Unity/Csharp/ラムダ式」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(AddListenerの場合)
 
(同じ利用者による、間の2版が非表示)
行22: 行22:
 
<pre>
 
<pre>
 
Button button = GameObject.Find("Button").GetComponent<Button>();
 
Button button = GameObject.Find("Button").GetComponent<Button>();
button.onClick.AddListener(() => { OnClick(); });
+
button.onClick.AddListener(() => OnClick());
 
public void OnClick() {
 
public void OnClick() {
 
     Debug.Log("click");
 
     Debug.Log("click");
 
}
 
}
 +
</pre>
 +
ラムダ式(複数処理の場合は{}で囲んで;で処理の続きを記述)
 +
<pre>
 +
Button button = GameObject.Find("Button").GetComponent<Button>();
 +
button.onClick.AddListener(() => {
 +
    Debug.Log("click");
 +
});
 
</pre>
 
</pre>

2022年9月4日 (日) 16:32時点における最新版

メソッドの場合

通常

public void Hoge() {
    Debug.Log("hoge");
}

ラムダ式

public void Hoge() => Debug.Log("hoge");

AddListenerの場合

通常

Button button = GameObject.Find("Button").GetComponent<Button>();
button.onClick.AddListener(OnClick);
public void OnClick() {
    Debug.Log("click");
}

ラムダ式

Button button = GameObject.Find("Button").GetComponent<Button>();
button.onClick.AddListener(() => OnClick());
public void OnClick() {
    Debug.Log("click");
}

ラムダ式(複数処理の場合は{}で囲んで;で処理の続きを記述)

Button button = GameObject.Find("Button").GetComponent<Button>();
button.onClick.AddListener(() => { 
    Debug.Log("click");
});