btn.onClick.AddListener(delegate () { this.OnBtnClick(true); });
传递一个有参数的方法用于传递参数。这样点击事件就能接收参数了。
- using UnityEngine;
- using UnityEngine.UI;
- public class Test : MonoBehaviour
- {
- private Button btn;
- void Awake()
- {
- btn= btnObj.GetComponent<Button>();
- }
- void Start()
- {
- //lambda表达式转换为委托类型
- btn.onClick.AddListener(delegate () { this.OnBtnClick(true); });
- }
- public void OnBtnClick(bool value)
- {
- Debug.Log("Result " + (value ? "On" : "Off"));
- }
- }

本文介绍了在Unity3D的C#脚本中,如何使用Button组件的onClick事件并结合delegate和lambda表达式来传递带参数的方法。通过在点击事件中调用OnBtnClick方法并传入布尔值,实现点击事件接收参数的功能。
1602





