2012-04-16 7 views
0

私のアプリのビューコントローラにAdBannerViewを実装しました。 iPhoneでうまく動作しますが、iPadでテストするときに問題があります。広告はうまく表示されますが、解雇をテストするためにWi-Fiをオフにすると、広告はウィンドウ内のすべての要素を取り込み、背景とタブバーを所定の位置に残します。これはiPadでのみ発生します。ここでiPad上のAdBannerViewは、解散のアニメーション化時にオフスクリーンをスクロールします。

は、広告のビューをアニメーション化のための私のコードです:

- (void)fixupAdView:(UIInterfaceOrientation)toInterfaceOrientation { 
int adY = 432; 
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
{ 
    adY = 955; 
} 
if (_adBannerView != nil) {   
    if (UIInterfaceOrientationIsLandscape(toInterfaceOrientation)) { 
     [_adBannerView setCurrentContentSizeIdentifier: 
     ADBannerContentSizeIdentifierLandscape]; 
    } else { 
     [_adBannerView setCurrentContentSizeIdentifier: 
     ADBannerContentSizeIdentifierPortrait]; 
    }   
    [UIView beginAnimations:@"fixupViews" context:nil]; 
    if (_adBannerViewIsVisible) { 
     NSLog(@"Visible"); 
     CGRect adBannerViewFrame = [_adBannerView frame]; 
     adBannerViewFrame.origin.x = 0; 
     adBannerViewFrame.origin.y = adY - 
     [self getBannerHeight:toInterfaceOrientation]; 

     [_adBannerView setFrame:adBannerViewFrame]; 
     CGRect contentViewFrame = _contentView.frame; 

     contentViewFrame.origin.y = adY + 
     [self getBannerHeight:toInterfaceOrientation]; 

     contentViewFrame.size.height = self.view.frame.size.height - 
     [self getBannerHeight:toInterfaceOrientation]; 

     _contentView.frame = contentViewFrame; 

    } else { 
     NSLog(@"Not Visible"); 
     CGRect adBannerViewFrame = [_adBannerView frame]; 
     adBannerViewFrame.origin.x = 0; 
     adBannerViewFrame.origin.y = adY; 

     [_adBannerView setFrame:adBannerViewFrame]; 
     CGRect contentViewFrame = _contentView.frame; 

     contentViewFrame.origin.y = adY 
     + [self getBannerHeight:toInterfaceOrientation]; 

     contentViewFrame.size.height = self.view.frame.size.height; 

     _contentView.frame = contentViewFrame;    
    } 
    [UIView commitAnimations]; 
} 

}

答えて

0

私は間違った場所に広告ビューの私のフレームオフセットを持っていました。 adviewが作成されたときに適切な場所に広告をプッシュするのに十分なiPhoneフレームには完璧なことが起こりました。 iPadのために時間が来たとき、計算されたオフセットはウィンドウからビューを押したが、ビューに戻るには十分ではなかった。

関連する問題