Расположите iAd в нижней части экрана (обе ориентации) - PullRequest
0 голосов
/ 18 декабря 2011

У меня есть тестирование универсального приложения (iPhone / iPad) на IOS4.3.У него есть iAd, который я хочу расположить внизу экрана в обеих ориентациях. Ниже приведен код:

- (void) viewWillAppear:(BOOL)animated {
adView_.requiredContentSizeIdentifiers = [NSSet setWithObjects: ADBannerContentSizeIdentifierPortrait, ADBannerContentSizeIdentifierLandscape, nil];
    adView_.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;

    CGRect adFrame = adView_.frame;
    adFrame.origin.y = self.view.frame.size.height-adView_.frame.size.height;
    adView_.frame = adFrame;

    adView_.delegate = self;
    [webView addSubview:adView_];
    [self.view bringSubviewToFront:adView_];
    self.bannerIsVisible=NO;

    [super viewWillAppear: animated];
}

Теперь для обработки ориентации у меня есть:

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
    if (UIInterfaceOrientationIsLandscape(toInterfaceOrientation))
        self.adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierLandscape;
    else
        self.adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;
    CGRect adFrame = adView_.frame;
    adFrame.origin.y = self.view.frame.size.height-adView_.frame.size.height;
    adView_.frame = adFrame;
    [webView addSubview:adView_];
    [self.view bringSubviewToFront:adView_];
    self.bannerIsVisible=NO;
}

Моя проблема связана с загрузкой приложения (портрет), я могу видеть iAd, четко расположенный в нижней части экрана.

Но как только я меняю ориентацию на альбомную, я не вижу iAd.Я вижу сообщение;

ADBannerView: ВНИМАНИЕ! В представлении баннера (0x62534a0) есть реклама, но она может быть скрыта.Это сообщение печатается только один раз для каждого баннера.

Я думаю, что я делаю что-то не так внутри willRotateToInterfaceOrientation

Пожалуйста, помогите мне решить проблемуСпасибо.

1 Ответ

1 голос
/ 18 декабря 2011

Попробуйте переместить ваш код в didRotateFromInterfaceOrientation.Новая геометрия еще не установлена ​​в willRotateToInterfaceOrientation.

...