iAd на iPad: альбомная ориентация не правильно ориентирована - PullRequest
5 голосов
/ 25 ноября 2010

Это все еще относительно новая тема, поэтому я не знаю, сколько людей реализовали iAd на iPad (iOS4.2.1).

Но в основном я получаю баннер iAd в ландшафтном режиме (иэто выглядит правильно).Единственная проблема - когда я нажимаю «Тестовая реклама», она показывает тестовую рекламу в портретном режиме.То есть устройство все еще находится в горизонтальной ориентации, но само текстовое поле с надписью «это подтверждает, что тестовые объявления работают правильно» сбоку.

Это нормально?кто-нибудь еще испытывал это?Это почти похоже на ошибку яблока, но я не уверен ...

Ответы [ 3 ]

3 голосов
/ 25 ноября 2010

Это случается и со мной тоже. Тестовая реклама Apple на iPhone и iPad носит только портретный характер. Реальные рекламные объявления вероятно будут поддерживать альбомный режим.

1 голос
/ 09 марта 2012

У меня просто была такая же проблема, и в моем случае она была вызвана не установкой rootViewController в делегате приложения.Вместо этого я просто добавил представление контроллера прямо в окно.

Это поведение можно воспроизвести, внеся одно изменение в пример BasicBanner из iAdSuite от Apple.

В AppDelegate.m измените строку:

self.window.rootViewController = tvc;

до:

[self.window addSubview:tvc.view];

, и реклама всегда будет отображаться в портретной ориентации.Измените строку на настройку rootViewController, и объявление будет вращаться соответствующим образом.

Настройка rootViewController, по-видимому, необходима для того, чтобы модуль iAd мог получать уведомления об ориентации устройства.

По пути я заметил, чтообъявление или, по крайней мере, тестовое объявление, реагирует только на ориентацию устройства и не учитывает интерфейс InterfaceOrientation контроллера во время его запуска.Если вы запустили BasicBanner без вышеуказанной ошибки, а устройство лежало ровно, а приложение находилось в горизонтальном режиме, объявление будет отображаться в портретной ориентации и не будет переориентировано в альбомную ориентацию, пока вы не откроете устройство.Поведение симулятора в равной степени противоречиво.

Я не знаю, относится ли эта слабость к тестовому объявлению или ко всем объявлениям iAd.

1 голос
/ 13 сентября 2011

по умолчанию ADBannerView requiredContentSizeIdentifiers имеет Пейзаж И Портрет.Если вы используете только альбомную ориентацию, вы должны создать новый NSSet с ADBannerContentSizeIdentifierLandscape

iAdView.requiredContentSizeIdentifiers = [NSSet setWithObjects:ADBannerContentSizeIdentifierLandscape, nil];

. После этого тестовое объявление будет отображаться правильно.

...