訂閱程式碼中的事件
預設情況下,應該使用檢查器訂閱事件,但有時最好在程式碼中執行此操作。在這個例子中,我們訂閱按鈕的 click 事件以便處理它。
using UnityEngine;
using UnityEngine.UI;
[RequireComponent(typeof(Button))]
public class AutomaticClickHandler : MonoBehaviour
{
private void Awake()
{
var button = this.GetComponent<Button>();
button.onClick.AddListener(HandleClick);
}
private void HandleClick()
{
Debug.Log("AutomaticClickHandler.HandleClick()", this);
}
}
UI 元件通常可以輕鬆地提供主要監聽器:
- 按鈕: onClick
- 下拉選單: onValueChanged
- InputField: onEndEdit , onValidateInput , onValueChanged
- 滾動條: onValueChanged
- ScrollRect: onValueChanged
- 滑塊: onValueChanged
- 切換: onValueChanged