Как скрыть UIButton, если Reward Ad не загружен в Swift? - PullRequest
0 голосов
/ 10 мая 2019

В настоящее время я включаю рекламу в свою игру на spritekit, и у меня есть кнопка, где при нажатии пользователь может получить бесплатные монеты за просмотр рекламы. Однако это происходит только после загрузки объявления, проблема в том, что кнопка все еще там. Я хочу, чтобы кнопка была скрыта, пока объявление еще не загружено, и отображается после загрузки объявления. Я удалил неактуальный код из моего контроллера представления.

import UIKit
import SpriteKit
import GameplayKit
import GoogleMobileAds

class GameViewController: UIViewController, GADBannerViewDelegate, GADRewardBasedVideoAdDelegate {

    @IBOutlet weak var bannerView: GADBannerView!

   @IBOutlet weak var playRewardAd: UIButton!

        override func viewDidLoad() {

            super.viewDidLoad()

            GADRewardBasedVideoAd.sharedInstance().load(GADRequest(),
                                                    withAdUnitID: "ca-app-pub-3940256099942544/1712485313")

            GADRewardBasedVideoAd.sharedInstance().delegate = self

            bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
            bannerView.rootViewController = self
            bannerView.load(GADRequest())

    @IBAction func playVideoAd(_ sender: Any) {

        if GADRewardBasedVideoAd.sharedInstance().isReady == true         {
            GADRewardBasedVideoAd.sharedInstance().present(fromRootViewController: self)
        }        
}

    func rewardBasedVideoAdDidClose(_ rewardBasedVideoAd: GADRewardBasedVideoAd) {
        GADRewardBasedVideoAd.sharedInstance().load(GADRequest(),
                                                withAdUnitID: "ca-app-pub-3940256099942544/1712485313")

    }

    func rewardBasedVideoAd(_ rewardBasedVideoAd: GADRewardBasedVideoAd,
                            didRewardUserWith reward: GADAdReward) {
        coinNumber = coinNumber + 100
        defaults.set(coinNumber, forKey: "coinsSaved")
        coinLabel.text = "\(coinNumber)"
    }
}
...