アプリで Admob メディエーションを使用しています。基本的に、ビューの上部にはバナー用に予約されたスペースがあります。
したがって、私のコードでは、iPad と iPhone のどちらに移動するかをバナーに伝えることができます。
それは私の iPhone で完全に動作し、奇妙なことに、これは iPad と iPhone の両方の他の多くのアプリで動作しますが、何らかの理由で、このアプリでは、iPad のみで、画面の上部に余分な部分が作成されます。バナーが一番上にあるのではなく、そのバナーの後に、たとえば 30 ピクセル (約) の小さなギャップがあり、これが画面を押し下げるので、恐ろしく見えます!
呼び出しに使用されるコードは次のとおりです。アイデアはありますか? そのバナー ビューの iPad 部分を削除すると、ビューは正常に読み込まれるため、そのコードに何かが含まれている必要があります。
- (void)viewDidLoad{
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeSmartBannerPortrait];
bannerView_.adUnitID = MY_BANNER_UNIT_ID;
CGRect screenRect = [[UIScreen mainScreen] bounds];
CGFloat screenWidth = screenRect.size.width;
CGFloat screenHeight = screenRect.size.height;
CGFloat screenXPos = (screenWidth /2);
CGFloat screenYPos = screenHeight - 980;
[bannerView_ setCenter:CGPointMake(screenXPos, screenYPos)];
bannerView_.rootViewController = self;
bannerView_.adUnitID = MY_BANNER_UNIT_ID;
bannerView_.rootViewController = self;
[self.view addSubview:bannerView_];
}else{
bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeSmartBannerPortrait];
bannerView_.adUnitID = MY_BANNER_UNIT_ID;
CGRect screenRect = [[UIScreen mainScreen] bounds];
CGFloat screenWidth = screenRect.size.width;
CGFloat screenHeight = screenRect.size.height;
CGFloat screenXPos = (screenWidth /2);
CGFloat screenYPos = screenHeight - 455;
[bannerView_ setCenter:CGPointMake(screenXPos, screenYPos)];
bannerView_.rootViewController = self;
bannerView_.adUnitID = MY_BANNER_UNIT_ID;
bannerView_.rootViewController = self;
[self.view addSubview:bannerView_];
[super viewDidLoad];
self.navigationController.navigationBarHidden=YES;
isCharging = FALSE;
isFull = FALSE;
count =0;
}
}