Баннер iAd исчез после увольненияModalViewControllerAnimated

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

В главном контроллере представления я добавляю баннер iAd в качестве подпредставления, а также создаю экземпляр контроллера представления «Главное меню» и добавляю его представление в качестве подпредставления. Отлично, теперь у меня есть главное меню для моего приложения (используя UINavigationController, чтобы другие представления выталкивались/извлекались из стека навигации, оставляя рекламу сверху).

Однако, когда я показываю модальное диалоговое окно (например, отправить электронное письмо) и закрываю его, баннер iAd исчезает, и представление главного меню теперь занимает весь экран. Есть ли что-то, что мне нужно сделать, чтобы «обновить» представление iAd сверху?


person Jay Imerman    schedule 14.04.2013    source источник
comment
+1 - Столкнулся с похожей проблемой. Если iAd был внизу, когда контроллер модального представления закрывается, там, где был iAd, появляется черный цвет, а iAd отображается вверху. Пожалуйста помоги!   -  person BigSauce    schedule 22.04.2013
comment
Мне интересно, как вы всегда оставляете рекламу сверху? Это может быть частью причины.   -  person Mariam K.    schedule 23.04.2013
comment
Возможно, возникла проблема с вашим кодом позиционирования iAd. Если это так, это может помочь: stackoverflow.com/a/9821394/653513   -  person Rok Jarc    schedule 23.04.2013
comment
У меня была такая проблема. Но я решил это следующими способами. Попробуйте это.. - (void)bannerViewDidLoadAd:(ADBannerView *)banner { //NSLog(@showing add); adBanner.frame = CGRectMake(0.0, yPostion, banner.frame.size.width, banner.frame.size.height); [self.view addSubview:adBanner]; [self.view BringSubviewToFront:adBanner]; }   -  person Raj Subbiah    schedule 25.04.2013
comment
Я узнал решение этой проблемы: devforums.apple.com/message/805896#805896   -  person BigSauce    schedule 25.04.2013
comment
@TrueLifeCoder - интересно, но это был не мой случай. Я хотел, чтобы мое объявление оставалось на вершине всех просмотров, кроме модальных диалогов. Итак, у меня есть UINavigationController, открытый первым делом с UITableView, с объявлением выше. Затем я нажимаю кнопку «О программе», которая открывает модальное представление, затем, когда я закрываю окно, рекламный баннер исчезает, а навигационный контроллер занимает весь экран.   -  person Jay Imerman    schedule 03.05.2013


Ответы (1)


Похоже, у вас есть 2 UIViewController, и вы пытаетесь вручную добавить подвид одного к другому без использования каких-либо API-интерфейсов контейнера - я не удивлен, что это не работает должным образом.

См. раздел «Создание пользовательских контроллеров представлений контейнеров» в Руководстве по программированию контроллеров представлений для iOS или, что проще, создайте подкласс UIViewController, который всегда показывает рекламу сверху.

person Daniel Broad    schedule 28.04.2013