2016-02-17 4 views
0

Я создал помощник iAds и AdMob, который я разработал для своей спрайтинговой игры, доступной на gitHub.Swift Класс помощника ViewController

https://github.com/crashoverride777/Swift2-iAds-AdMob-CustomAds-Helper

Путь помощник разработан в том, что вы устанавливаете свойство presentingViewController

Ads.sharedInstance.presentingViewController = self 

как только ваша игра запускается в вашем gameViewController (игры, как правило, только 1 viewControlle так работает отлично).

Однако некоторые пользователи сообщили, что при использовании Помощника в обычных приложениях UIKit объявления не будут отображаться корректно при изменении диспетчеров вида.

Для UIKit объявлений помощника слегка изменен, где вспомогательные методы будут теперь выглядеть как этого

func showBannerAd(viewController: UIViewController) { 
     self.presentingViewController = viewController 
     .... 
} 

и чем вы можете назвать их в ViewControllers

Ads.sharedInstance.showBannerAd(self) 

Однако это по-прежнему вызывает вопрос при изменении ViewControllers. Я считаю, что это как-то связано с rootViewController.

Может кто-нибудь объяснить, как я мог бы использовать этот помощник для UIKitApps, в основном, как я могу использовать помощник, который имеет viewControllerProperty

presentingViewController: UIViewController 

но гарантировать это свойство всегда rooViewController так Объявления будут показываться независимо от ViewController используется в приложении UIKit.

Спасибо за любую помощь

ответ

0

Я считаю, что проблема заключалась в том, что я не называя RootViewController при представлении объявлений.

Теперь я называю это как так

presentingViewController.view?.window?.rootViewController?.presentView... 

, которые должны гарантировать, что объявления всегда показываются даже при использовании нескольких контроллеров представления.

Смежные вопросы