为什么这个iAd没有正确消失?

时间:2014-03-04 22:25:39

标签: ios objective-c cocoa-touch iad

// iAd Advertising
#pragma mark iAd Delegate Methods

- (void) bannerViewDidLoadAd:(ADBannerView *)banner {
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1];
    [banner setAlpha:1];
    [UIView commitAnimations];

} // if there is an internet connection, load the iAd with a 1 second fade in effect

- (void) bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error {
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1];
    [banner setAlpha:0]; 
    [UIView commitAnimations];
}

setAlpha0时,它不应该消失,而不是在屏幕上显示白线代替不存在的广告吗?

我希望横幅完全消失,但它会显示一条白色横幅。我以前使用过这种类型的动画,没有任何问题,它使事情完全消失。是因为它是iAd横幅吗?

2 个答案:

答案 0 :(得分:1)

在你的标题文件中..

@property (strong, nonatomic) IBOutlet ADBannerView *adBanner;

在您的实施文件中..

- (void) bannerViewDidLoadAd:(ADBannerView *)banner {
    adBanner.hidden = 0;

}

- (void) bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error {
    adBanner.hidden = 1;
}

答案 1 :(得分:1)

在iAd上的故事板中将alpha设置为0。然后它将使用您提供的代码。