【问题标题】:Can't remove Admob Banner from the view (iOS)无法从视图中删除 Admob 横幅 (iOS)
【发布时间】:2014-08-26 05:56:43
【问题描述】:

我已经在我的应用中实现了 Admob,但我注意到如果 Admob 视图没有收到广告,我无法将其从超级视图中删除。如果它已经加载了一个广告,即使设备没有连接到互联网,它也会随着加载的广告停留在那里。这是我的代码:

self.admobBannerView = [[GADBannerView alloc] init];
self.admobBannerView.frame = CGRectMake(0.0,self.view.frame.size.height-50,
                                                  GAD_SIZE_320x50.width,
                                                  GAD_SIZE_320x50.height);

self.admobBannerView.adUnitID = @"...";
self.admobBannerView.rootViewController = self;
self.admobBannerView.delegate = self;
[self.view addSubview:self.admobBannerView];
[self.admobBannerView loadRequest:[GADRequest request]];

然后是 Admob 委托

- (void)adView:(GADBannerView *)view didFailToReceiveAdWithError:(GADRequestError *)error {
   [self.admobBannerView removeFromSuperview];
}

尽管调用了 [self.admobBannerView removeFromSuperview];横幅仍然在原处。我不明白为什么会这样。任何帮助表示赞赏。 谢谢

【问题讨论】:

  • 嗨@Wilky94 你找到解决这个问题的方法了吗?如果你有,请分享:) 谢谢

标签: ios delegates admob subview banner


【解决方案1】:

我遇到了同样的问题,并使用 Xcode 调试了视图层次结构,结果发现存在多个 GADBannerView。修复了在添加广告视图之前检查广告视图是否已经存在的代码。

在您的情况下,您应该将广告视图创建包装在:

if (self.admobBannerView != nil)
{
  // create ad
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多