平常项目里一直用委托delegate 后来看到action 其实Action也是委托只是c#给封装好了
首先创建脚本TestAction
using System;
using UnityEngine;
using System.Collections;
/// <summary>
/// Author: lyl
/// Function:
/// Version: 1.0v
/// </summary>
public class TestAction : MonoBehaviour
{
private Action<string> lyl;
private int i=0;
// Use this for initialization
void Start ()
{
lyl = TestActions;
}
// Update is called once per frame
void Update () {
}
#region
public void TestActions(string lll)
{
Debug.Log(lll);
}
#endregion
#region
public void ChangeData()
{
i++;
if(lyl!=null)
lyl(i.ToString());
}
#endregion
}
然后在unity建立一个空物体 把脚本挂上去 然后在创建一个Button 触发脚本里的ChangeData()的方法每点击一次日志里i的数值增加一次 。