В настоящее время я включаю рекламу в свою игру на 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)"
}
}