2012-04-05 49 views
0

私のViewControllerにAdMobを設定しています。私はナビゲーションバーを隠すまで、すべてが良いです。ナビゲーションバーが非表示になるとAdMobフレームが表示されます。どのように私はそれを私のビューの底に固執することができますか?ここにあるものは位置:ナビゲーションバーが隠されているときにAdMobが下部に表示されます

-(void)navBarTransition:(BOOL)hide 
    { 
     [[self navigationController] setNavigationBarHidden:hide animated:YES]; 

     //addjust frame height when ads is visible 
     if(hide) 
     { 
     CGRect frame = CGRectMake(0.0,self.view.frame.size.height + GAD_SIZE_320x50.height,GAD_SIZE_320x50.width, GAD_SIZE_320x50.height); 

     [bannerView_ setFrame:frame]; 
     } 
    } 
+0

あなたのフレームのYコーディネーター – Hiren

+0

CGRectフレーム= CGRectMakeをチェック(0.0 、self.view.frame.size.height - GbannerView.frame.size.height、GAD_SIZE_320x50.width、GAD_SIZE_320x50.height); – priyanka

+0

@ CocoaMatters重要です。私はbannerView_のYポイントとして0を取得し続けます。 @ priyanka。私は前にそれを試みたが、それはまた仕事をしなかった。バナービューはまだ底に固執しません。 – Diffy

答えて

0

ナビゲーションバーを非表示にする直前に、origin.yをその高さだけ下に移動します。また、自動サイズ設定マスク(フレキシブルな上下のマージン)がないことを確認してください。これが機能しない場合

CGRect bFrame = bannerView_.frame; 
CGFloat newY = bFrame.origin.y + self.navigationController.navigationBar.frame.size.height; 
bFrame.origin.y = newY; 
[bannerView_ setFrame:bFrame]; 

あなたはCJPAdController(:私はこのクラスを書い開示)を使用して試みることができます。あなたはこのクラスを実装する場合は、単純に(ちょうどテストし、あなたがそれを希望として動作するように登場している)は、次のようにコードを調整することができます。

[[self navigationController] setNavigationBarHidden:hide animated:YES]; 
if(hide) 
    [CJPAdController sharedManager] fixAdViewAfterRotation]; 
関連する問題