按下横幅时iAd无效?

时间:2012-12-31 17:44:17

标签: ios xcode iad

我见过其他问题,但似乎没有帮助...

我的标签栏应用中的一个视图控制器底部有一个iAd横幅。 我想在没有广告的时候隐藏它,但是当它有广告时显示它。

以下是来自View Controller的代码,用于打开或关闭它,基于Apple的示例:

- (void)configureAdAnimated:(BOOL)animated
{
    CGRect viewFrame   = self.mainView.frame;
    CGRect bannerFrame = adBannerView.frame;

    self.adBannerView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;

    if (adBannerView.bannerLoaded) {
        viewFrame.size.height -= adBannerView.frame.size.height;
        bannerFrame.origin.y = viewFrame.size.height;
        self.adIsVisible = YES;
    }
    else {
        bannerFrame.origin.y = viewFrame.size.height + bannerFrame.origin.y;
        self.adIsVisible = NO;
    }

    [UIView animateWithDuration:animated ? 0.25 : 0.0 animations:^{
        self.mainView.frame = viewFrame;
        [self.mainView layoutIfNeeded];
        adBannerView.frame = bannerFrame;
    }];

}

它偶尔抛出随机错误(一些未知,有些像“广告库存不可用”等),当它必须时它就会消失,但当它发生时,我无法点击它并在那里在它上面是一个黑色空间,如下:

iAd doesn't open, and the banner has a black space above it...

我已设置当前内容大小标识符,委托(= self)等

我该怎么做才能让它发挥作用? 如果您需要更多代码,更多信息等,请告诉我。 谢谢!

1 个答案:

答案 0 :(得分:1)

尝试通过在单个视图应用程序中实现iAd而不是选项卡式布局来简化调试。

请注意,黑色空间的大小与iAd相同。这应该可以为您提供有关正在发生的事情的线索。