Admob 6.8.0:手动删除,隐藏或禁用横幅

时间:2014-05-03 01:22:58

标签: ios xcode admob

这里有很多类似的问题,但没有一个解决方案正在使用最新的AdMob SDK。至少我无法使它发挥作用。

装载:

- (void)AdMob_Banner_On
 {
    bannerView_.adUnitID = kAdMobID;
    bannerView_.rootViewController = self;
    [bannerView_ loadRequest:[GADRequest request]];
    (...)
}

他们运行得很好,现在正在删除......我找到的所有解决方案都非常简单,但他们不能工作:

 - (void)AdMob_Banner_Off {

     NSLog(@"Admob: Turning Off");

     bannerView_.hidden = YES;
     [bannerView_ removeFromSuperview];
     [bannerView_ setDelegate:nil];
     bannerView_ = nil;
 }

有时我需要所有屏幕都可用,我无法一直显示广告。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

如果有人遇到同样的问题,请按以下步骤解决。

问题在于我是“AdMob_Banner_On”方法上的行被颠倒了。

虽然横幅完美显示,但它使bannerView_无法响应任何其他命令,因此即使调用了AdMob_Banner_Off,也没有发生任何事情。

现在有效的代码。你要做的第一件事是设置横幅的位置,然后调用它。那是我的问题。这段代码应该可以正常工作:

开启:

 - (void)AdMob_Banner_On {

     NSLog(@"Admob: Turning On");

     // Making it on the bottom:

     CGPoint origin = CGPointMake(0.0,self.view.frame.size.height - CGSizeFromGADAdSize(kGADAdSizeSmartBannerPortrait).height);
          bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeSmartBannerPortrait origin:origin];

     bannerView_.adUnitID = kAdMobID;
     bannerView_.rootViewController = self;
     bannerView_.delegate = self;
     [self.view addSubview:bannerView_];
     [bannerView_ loadRequest:[GADRequest request]];

 }


 - (void)AdMob_Banner_Off: {

     NSLog(@"Admob: Turning Off");

     [bannerView_ removeFromSuperview];

 }

使用此代码,您可以根据需要打开和关闭横幅。这对于无法始终显示横幅广告的应用程序非常有用。

答案 1 :(得分:0)

initAd必须位于viewDidLoad 我解决了。