发布
社区首页 >问答首页 >“方法”“`destroyAfterCBEvent”“没有重载采用”“0”“参数”“

“方法”“`destroyAfterCBEvent”“没有重载采用”“0”“参数”“
EN

Stack Overflow用户
提问于 2014-05-21 13:53:17
回答 1查看 453关注 0票数 0

错误:方法destroyAfterCBEvent' takes0的参数没有重载

上述problem>的解决方案是什么?

代码语言:javascript
代码运行次数:0
复制
Chartboost.CBManager.didFailToLoadInterstitialEvent += destroyAfterCBEvent();

void destroyAfterCBEvent (string location)
{
    Debug.LogError ("CB Event failed, noads button destroyed");
    Destroy (gameObject);
 }

这些是用于生成错误的代码。

EN

回答 1

Stack Overflow用户

发布于 2014-05-21 13:54:42

当您实际想要使用方法组转换来创建一个委托来订阅事件时,您将调用destroyAfterCBEvent。您需要去掉括号(这就是它是一个方法调用的原因)。您需要:

代码语言:javascript
代码运行次数:0
复制
Chartboost.CBManager.didFailToLoadInterstitialEvent += destroyAfterCBEvent;

这相当于:

代码语言:javascript
代码运行次数:0
复制
Chartboost.CBManager.didFailToLoadInterstitialEvent +=
    new Action<string>(destroyAfterCBEvent);

或者根据你的评论:

代码语言:javascript
代码运行次数:0
复制
Chartboost.CBManager.didFailToLoadInterstitialEvent +=
    new GUIClickEventReceiver(destroyAfterCBEvent);

(鉴于Chartboost documentation,后者让我大吃一惊。)

顺便说一句,最好更改代码以遵循正常的.NET命名约定-事件和方法都应该是PascalCased。事件通常也应该有一个与EventHandler兼容的委托。(我对ChartBoost一无所知,所以可能其中一些问题与您无关……但方法名绝对是您可以修复的。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23775037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档