【问题标题】:Delegate(?) action events委托(?)动作事件
【发布时间】:2014-10-11 11:07:12
【问题描述】:

我想在我的应用用户成功观看 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 可能与 action 事件不同,只是为了向您展示我认为它是如何工作的。

谢谢 尼克

【问题讨论】:

    标签: c# events delegates action


    【解决方案1】:

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

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

    这样订阅:

    Chartboost.didCompleteRewardedVideo += DidCompleteRewardedVideo;
    

    【讨论】:

      猜你喜欢
      • 2013-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-19
      • 1970-01-01
      • 2013-10-23
      相关资源
      最近更新 更多