xcode 4.3 - storyboard - iAd

时间:2012-03-20 18:21:38

标签: objective-c ios storyboard iad

我正在使用故事板,我已将iAd横幅添加到我的视图中。我没有显示横幅的问题,但在横幅显示之前它有一个看起来很奇怪的白色背景。

如何才能保留原始背景,如果没有投放广告而不是白色背景?

我找了很多代码和教程,所有这些都没有解决这个问题。任何想法?

1 个答案:

答案 0 :(得分:1)

如果在负责展示广告的viewController中,您采用了代理ADBannerViewDelegate,则有一种方法会在广告加载时通知您,并准备好显示。

- bannerViewDidLoadAd:

您可以隐藏广告或将其从视图中删除,一旦您收到广告已准备好的通知,请将其重新添加回视图。

http://developer.apple.com/library/ios/#documentation/userexperience/Reference/ADBannerViewDelegate_Ref/Reference/Reference.html#//apple_ref/doc/uid/TP40009581

http://developer.apple.com/library/ios/#DOCUMENTATION/UserExperience/Conceptual/iAd_Guide/WorkingwithBannerViews/WorkingwithBannerViews.html#//apple_ref/doc/uid/TP40009881-CH4-SW9


修改 这是来自Apple:

  

广告加载时的响应

     

iAd框架让它变得简单   采用异步模型,只显示一个广告   可用。您的应用程序永远不应显示空横幅视图。   相反,它应该在广告可用时显示横幅   当没有任何东西可以显示时,隐藏横幅。

     

当横幅视图显示新广告时,它会调用   delegate的bannerViewDidLoadAd:方法。即使调用此方法   横幅视图当前不是视图层次结构的一部分。您的   应用程序可以使用此方法将视图添加到视图层次结构或   在屏幕上移动横幅视图。 “Banner View Sizes”使用属性   跟踪横幅视图是否可见。如果横幅不是   可见并且加载了新广告,该方法为动画制作动画   查看屏幕。

     

清单2-2新广告后的横幅视图中的动画   装载

- (void)bannerViewDidLoadAd:(ADBannerView *)banner 
{ 
    if (!self.bannerIsVisible) 
    { 
        [UIView beginAnimations:@"animateAdBannerOn" context:NULL]; 
// Assumes the banner view is just off the bottom of the screen. 
        banner.frame = CGRectOffset(banner.frame, 0, -banner.frame.size.height); 
        [UIView commitAnimations]; 
        self.bannerIsVisible = YES; 
    } 
}