Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import UIKit
- import GoogleMobileAds
- class AdViewController: UIViewController, GADBannerViewDelegate {
- var banner:GADBannerView!
- var bannerBackground:UIView!
- override func viewDidLoad() {
- super.viewDidLoad()
- //init banner
- initBanner()
- //set layout
- setLayout()
- }
- func setLayout(){
- var views:[String:AnyObject] = ["topGuide" : self.topLayoutGuide, "bottomGuide" : self.bottomLayoutGuide]
- if !Constants.IS_PREMIUM {
- views["banner"] = bannerBackground
- }
- let metrics:[String:AnyObject] = ["bannerHeight" : Constants.IS_IPAD ? kGADAdSizeLeaderboard.size.height : kGADAdSizeBanner.size.height]
- //horizontal constraints
- var constraints:[NSLayoutConstraint] = []
- constraints.appendContentsOf( NSLayoutConstraint.constraintsWithVisualFormat("H:|-0-[topGuide]-0-|", options: [], metrics: metrics, views: views) )
- if !Constants.IS_PREMIUM {
- constraints.appendContentsOf( NSLayoutConstraint.constraintsWithVisualFormat("H:|-0-[banner]-0-|", options: [], metrics: metrics, views: views) )
- }
- //vertical constraints
- if !Constants.IS_PREMIUM {
- constraints.appendContentsOf( NSLayoutConstraint.constraintsWithVisualFormat("V:|-0-[topGuide]->=0-[banner(==bannerHeight)]-0-|", options: [], metrics: metrics, views: views) )
- }else{
- constraints.appendContentsOf( NSLayoutConstraint.constraintsWithVisualFormat("V:|-0-[topGuide]->=0-|", options: [], metrics: metrics, views: views) )
- }
- self.view.addConstraints(constraints)
- }
- //init banner
- func initBanner(){
- bannerBackground = UIView()
- bannerBackground.hidden = true
- bannerBackground.backgroundColor = Constants.color12
- bannerBackground.translatesAutoresizingMaskIntoConstraints = false
- self.view.addSubview(bannerBackground)
- if !Constants.IS_PREMIUM {
- bannerBackground.hidden = false
- banner = GADBannerView()
- banner.alpha = 0
- if Constants.IS_IPAD {
- banner.adSize = kGADAdSizeLeaderboard
- }else{
- banner.adSize = kGADAdSizeBanner
- }
- banner.adUnitID = Constants.ADMOB_ID
- banner.delegate = self
- banner.translatesAutoresizingMaskIntoConstraints = false
- banner.rootViewController = self
- let request = GADRequest()
- request.testDevices = Constants.ADMOB_TEST_DEVICES
- banner.loadRequest(request)
- bannerBackground.addSubview(banner)
- bannerBackground.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|-0-[banner]-0-|", options: [], metrics: nil, views: ["banner" : banner]))
- bannerBackground.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|-0-[banner(==bannerHeight)]-0-|", options: [], metrics: ["bannerHeight" : Constants.IS_IPAD ? kGADAdSizeLeaderboard.size.height : kGADAdSizeBanner.size.height], views: ["banner" : banner]))
- }
- }
- func adView(bannerView: GADBannerView!, didFailToReceiveAdWithError error: GADRequestError!) {
- print("Ad:" + error.localizedDescription)
- }
- func adViewDidReceiveAd(bannerView: GADBannerView!) {
- UIView.animateWithDuration(Constants.BANNER_ANIMATION_INTERVAL, animations: {
- self.banner.alpha = 1
- })
- }
- override func didReceiveMemoryWarning() {
- super.didReceiveMemoryWarning()
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement