我已经为我的第一个应用程序工作了几个月,我正处于一个阶段,我需要添加广告,然后我把它发送到应用程序商店。我已经成功地添加了iAD,并且正在尝试配置Chartboost。
当我试图阻止Chartboost在比赛的某些部分显示间隙时,我遇到了一些问题。我已经按照Chartboost网站上的文档设置了位置,并在ChartBost.h文件中声明:
// Return NO if showing an interstitial is currently inappropriate, for example if the user has entered the main game mode
- (BOOL)shouldDisplayInterstitial:(NSString *)location;
对不起,如果这听起来像一个愚蠢的问题,但我一直在搜索我的iOS书和网上的答案,我相信这是简单的。如何从另一个类返回是(BOOL)shouldDisplayInterstitial。我的GameViewController.m?
发布于 2014-04-09 03:41:47
如何从其他类返回是/否?
1.代表是重要的。将Chartboost的委托设置为GameViewController类
Chartboost *cb = [Chartboost sharedChartboost];
cb.delegate = self;//Specify your GameViewController object instead of self;
2.在类中实现该方法
- (BOOL)shouldDisplayInterstitial:(NSString *)location
{
return YES;
}
最佳实践: 来源
首次运行经验
只有在用户第一次玩完游戏之后才显示间隙是很好的实践(并在iOS人类界面指南中提到)。
您可以使用下面的Chartboost SDK委托方法来防止间隙,直到第二个startSession:
- (BOOL)shouldRequestInterstitialsInFirstSession {
return NO;
}
请参阅此示例
发布于 2014-04-09 03:28:27
1)创建了一个Chartboost
对象并为其设置了一个委托。
Chartboost *cb = [Chartboost sharedChartboost];
cb.delegate = self;
2)如果需要实现shouldDisplayInterstitial
方法的委托,则自定义
- (BOOL)shouldDisplayInterstitial:(NSString *)location
{
return YES;
}
请参阅这里的示例项目
发布于 2014-04-09 03:36:41
通过代表团。如果您需要声明shouldDisplayInterstitial:
的类不能回答这个问题,那么它应该问一个类,它可以:
- (BOOL) shouldDisplayInterstitial: (NSString *)location
{
return [self.delegate shouldDisplayInterstitial:location];
}
您的委托应该符合特定的协议并实现该方法。
有关委托的更多信息可以找到这里。
https://stackoverflow.com/questions/22961005
复制相似问题