委派(?)操作事件

本文关键字:操作 事件 委派 | 更新日期: 2023-09-27 18:26:11

我想在我的应用程序用户成功观看chartboost广告视频后给他们奖励,但问题是我无法添加功能。

这是脚本中的代码行:

public static event Action<CBLocation,int> didCompleteRewardedVideo;

现在我对事件操作一无所知,所以我认为这段代码可以:

Chartboost.didCompleteRewardedVideo += new EventHandler(DidCompleteRewardedVideo);

他的功能:

public void DidCompleteRewardedVideo(object sender, EventArgs e)
    {
        PlayerPrefs.SetInt("Energy", 10);
        energy = 10;
        energyText.text = energy.ToString();
    }

但出现编译错误,表示它们不匹配。eventHandler可能与动作事件不同,但它只是向您展示我认为它是如何工作的。

谢谢Nick

委派(?)操作事件

订阅事件时,必须匹配事件签名:

public void DidCompleteRewardedVideo(CBLocation location, int x)
{
    PlayerPrefs.SetInt("Energy", 10);
    energy = 10;
    energyText.text = energy.ToString();
}

订阅方式如下:

Chartboost.didCompleteRewardedVideo += DidCompleteRewardedVideo;