创建一个共享的旗帜。你在你的AppDelegate
init
,然后将其添加到UIViewController
的,你想拥有的横幅:
class AppDelegate: UIResponder, UIApplicationDelegate, GADBannerViewDelegate {
var window: UIWindow?
var adBannerView = GADBannerView()
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
adBannerView.adUnitID = "YourAdUnitID"
adBannerView.delegate = self
adBannerView.load(GADRequest())
adBannerView.isHidden = true
return true
}
func adViewDidReceiveAd(_ bannerView: GADBannerView!) {
adBannerView.isHidden = false
}
func adView(_ bannerView: GADBannerView!, didFailToReceiveAdWithError error: GADRequestError!) {
adBannerView.isHidden = true
}
在每UIViewController
你想有一个横幅:
let appDelegate = UIApplication.shared.delegate as! AppDelegate
override func viewDidLoad() {
super.viewDidLoad()
addBannerToView()
}
func addBannerToView() {
appDelegate.adBannerView.adSize = kGADAdSizeBanner
appDelegate.adBannerView.rootViewController = self
appDelegate.adBannerView.frame = CGRect(x: 0.0,
y: view.frame.height - appDelegate.adBannerView.frame.height,
width: view.frame.width,
height: appDelegate.adBannerView.frame.height)
view.addSubview(appDelegate.adBannerView)
}
是不可能的,你必须在每个'UIViewController' –
@Özgür的Ersil定义'BannerView',你能不能给我一个链接或解释我为什么?谢谢 –
看看其中一个链接。 [Stackoverflow iAdBanner之间的意见](http://stackoverflow.com/questions/28904619/how-to-share-iad-banner-between-views-using-appdelegate)或这[iAdExample](https://github.com/perlfly/iAdExample) – MwcsMac