Xcode Admob singleton - "使用未声明的标识符"共享""错误

时间:2014-09-14 22:18:39

标签: ios objective-c xcode singleton admob

好的,首先在任何论坛上发帖,但我会尽力描述我的问题。我是Xcode的初学者,所以我很期待一个简单的解决方案,但我似乎无法解决这个问题。

在Xcode中,我正在尝试创建一个Admob单例来获取所有视图控制器中的admob。 Admob将备份iAd,如果广告失败将显示该广告。

我遵循了这个指南:http://googleadsdeveloper.blogspot.dk/2012/04/creating-gadbannerview-singleton-in.html

我创建了一个GADMasterViewController .m和.h文件

GADMasterViewController.h看起来像这样

#import "GADBannerView.h"

@interface GADMasterViewController : UIViewController <GADBannerViewDelegate> {
    GADBannerView *adbanner_;
    BOOL isLoaded_;
    id currentDelegate_;
}



@end

并且GADMasterViewController.m文件看起来与指南中的完全相同,除了我把#import&#34; GADMasterViewController.h&#34;在顶部。

然后在我的viewController.m中,我希望广告显示我放

- (void)bannerView:(GADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error{
    _UIiAd.hidden = YES;

    shared = [GADMasterViewController singleton];
    [shared resetAdview:self]
}

但是在viewController.m中我收到以下错误: https://dl.dropboxusercontent.com/u/63928888/Sk%C3%A6rmbillede%202014-09-15%20kl.%2000.17.02.png

基本上它不会识别返回的&#34;共享&#34;错误的单身人士(或其他什么&#34;共享&#34;是)来自GADMasterViewController.m

我如何&#34;得到&#34; &#34;共享&#34;所以我的viewController没有产生这些错误?

1 个答案:

答案 0 :(得分:1)

您正在使用shared,但尚未将其定义为变量(本地或其他)。

所以,改变

shared = [GADMasterViewController singleton];
[shared resetAdview:self]

GADMasterViewController  *shared = [GADMasterViewController singleton];
[shared resetAdview:self];

[[GADMasterViewController singleton] resetAdview:self];

这样您就可以定义变量,或者不需要变量。