2010-09-14 71 views
0

我有以下ADBannerViewDelegate實現:的iAd:ADBannerViewDelegate方法只有viewDidLoad中後調用一次()

#pragma mark ADBannerViewDelegate Methods 
- (void)bannerViewDidLoadAd:(ADBannerView *)banner { 
    self.headerView.frame = CGRectMake(0, 0, 320, 94); 
    [self.tableView setTableHeaderView:headerView]; 
    adBannerView.hidden = FALSE; 
} 

- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error 
{ 
    headerView.frame = CGRectMake(0, 0, 320, 50); 
    [self.tableView setTableHeaderView:headerView]; //hide the ad if it doesnt fill 
    adBannerView.hidden = TRUE; 
} 

如果廣告是不可用的,我想我的萎縮headerview。如果有廣告,我想擴展它。

工作正常,視圖加載時。但是,看起來這些委託方法在視圖加載後不會被調用。我可能遇到以下情形:

  1. 觀的負荷,但沒有iAd的可用,因此headerView是縮小
  2. 用戶進入視圖B
  3. 用戶回來查看一個
  4. 問題:查看A已經加載,所以headerView收縮的狀態,但ADBannerViewDelegate方法不叫,所以我不能檢查,看看廣告是否可用

我怎樣才能確保這些delega即使在最初加載視圖後,方法會被調用嗎?

回答

0

委託方法確實被調用。蘋果公司有時不提供廣告,所以你有機會處理它。

相關問題