【问题标题】:UITabBar iAd Banner Not Loading Properly After Changing View更改视图后 UITabBar iAd 横幅未正确加载
【发布时间】:2015-07-02 11:57:33
【问题描述】:

我有一个 UITabBar,每个视图中都有一个 iAd 横幅。 第一次选择视图时一切正常,但是当我更改视图并返回第一个视图时,iAd 横幅无法正确加载(它是白色的,并在右上角显示 iAd 徽标),我得到了这个错误:The operation couldn’t be completed. Ad was unloaded from this banner

大约 15 秒后,横幅会加载广告

这是加载横幅的代码(在每个视图中都相同)

@property (nonatomic, strong) ADBannerView *banner;

在 viewDidLoad 中

self.banner = [[ADBannerView alloc] initWithFrame:CGRectMake(0, self.view.frame.size.height-29-50, self.view.bounds.size.width, 50)];
self.banner.delegate = (id)self;

[self.view addSubview:self.banner];

-(void)bannerViewActionDidFinish:(ADBannerView *)banner{
    NSLog(@"Ad Banner action did finish");
}

-(void)bannerViewDidLoadAd:(ADBannerView *)banner{
    NSLog(@"Ad Banner did load ad.");

    [UIView animateWithDuration:0.5 animations:^{
        self.banner.alpha = 1.0;
    }];
}

-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error{
    NSLog(@"Unable to show ads. Error: %@", [error localizedDescription]);

    [UIView animateWithDuration:0.5 animations:^{
        self.banner.alpha = 0.0;
    }];
}

【问题讨论】:

    标签: ios iad banner


    【解决方案1】:

    在您的viewWillAppear 中,将您的ADBannerViewalpha 最初设置为0

    -(void)viewWillAppear:(BOOL)animated {
        self.banner.alpha = 0.0;
    }
    

    这样,当您重新加载旧的view 时,您的ADBannerView 将被隐藏,直到它再次收到来自 iAd 网络的广告。

    更好的方法是在整个应用程序中使用Shared iAd Banner

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-16
      • 1970-01-01
      相关资源
      最近更新 更多