2011-09-08 68 views
0

我正在嘗試在我的一個現有應用程序中實現iAd。它的工作原理,但我不斷收到錯誤消息:ADBannerView:警告橫幅視圖有一個廣告,但可能會被遮蓋。此消息僅在每個橫幅視圖中打印一次。iAd警告 - 被遮擋的橫幅視圖

廣告被遮擋或可能被遮擋?代碼有問題嗎?我無法弄清楚。我會承認是一個新手。任何幫助將不勝感激。謝謝你看我的問題。

- (void)createBannerView { 

     Class cls = NSClassFromString(@"ADBannerView"); 

    if (cls) { 

     ADBannerView *adView = [[[cls alloc] initWithFrame:CGRectZero]autorelease];  

     adView.currentContentSizeIdentifier =ADBannerContentSizeIdentifierPortrait; 

     adView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleTopMargin |UIViewAutoresizingFlexibleBottomMargin| UIViewAutoresizingFlexibleRightMargin |UIViewAutoresizingFlexibleLeftMargin; 

     adView.delegate = self; 

     CGRect bannerFrame =adView.frame; 

     bannerFrame.origin.y = self.view.frame.size.height; 
      adView.frame = bannerFrame; 

      adView.frame = CGRectOffset(adView.frame, 0, -50); 


     self.bannerView = adView; 

     [self.view addSubview:adView]; 


    } 

} 

- (void)showBanner { 

    CGFloat fullViewHeight = self.view.frame.size.height; 

    CGRect tableFrame = self.tView.frame; 

    CGRect bannerFrame = self.bannerView.frame; 

    tableFrame.size.height = fullViewHeight - bannerFrame.size.height; 

    bannerFrame.origin.y = fullViewHeight - bannerFrame.size.height; 

    [UIView beginAnimations:@"showBanner" context:NULL]; 

    self.tView.frame = tableFrame; 

    self.bannerView.frame = bannerFrame; 

    [UIView commitAnimations]; 

} 
+0

我有同樣的問題,然後我看了這個YouTube視頻,看到我不得不添加的一面旗幟,並將其連接的他在視頻中顯示的方式,併爲我工作。希望這可以幫助! http://www.youtube.com/watch?v=hLpgL6K1vM4 – user961632

回答

0

嘗試增加[self.view bringSubviewToFront:bannerView];

+0

我曾嘗試過,我只是再試一次。相同的錯誤信息出現。我應該把它放在哪裏。我試圖把它放在createBannerView中。我應該把它放在其他地方嗎? –

+0

在您的動畫序列中嘗試它。 – WrightsCS

+0

我把bringSubViewToFront放在動畫中,我仍然收到錯誤信息。 –

1

的可能,正在顯示IAD的時候,你打開一個modalView控制器或其他視圖前面。這可能會導致模糊的錯誤。要消除錯誤

最簡單方法是,除去ViewWillDisappear橫幅畫面:

-(void)viewWillDisappear:(BOOL)animated 
{ 
    [bannerView removeFromSuperview]; 
}