Sie könnten nur den Alpha-Wert Ihrer AdBannerView
animieren den Effekt, den Sie erreichen wollen:
import iAd
private var bannerView: AdBannerView!
override func viewDidLoad() {
super.viewDidLoad()
// Create your banner view however you want, and add it to your UI.
bannerView = AdBannerView()
bannerView.alpha = 0
addSubview(bannerView)
}
// When you want to show the ad, animate the alpha.
private func animateInAd(appearing: Bool) {
UIView.animateWithDuration(1.0) [weak self] {
self?.bannerView.alpha = appearing ? 1 : 0
}
}
Hier ist eine andere Art und Weise Sie Bannerview präsentieren können. Sie können die Ansicht auf der Anzeige entfernen, wenn es Schiebetüren oben beendet hat:
import iAd
private var coverView: UIView!
private var bannerView: AdBannerView!
override func viewDidLoad() {
super.viewDidLoad()
// Create your banner view however you want, and add it to your UI.
bannerView = AdBannerView()
addSubview(bannerView)
// Create the cover view however you want, and add it above the banner view.
coverView = UIView()
addSubview(coverView)
}
private func animateInAd(appearing: Bool) {
let hideAdPosition = view.frame.size.height
let showAdPosition = hideAdPosition - bannerView.frame.size.height
UIView.animateWithDuration(1.0, animations: [weak self] {
self?.bannerView.frame.origin.y = appearing ? showAdPosition : hideAdPosition
}) { [weak self] success in
self?.animateCover(appearing: !appearing)
}
}
private func animateCover(appearing: Bool) {
UIView.animateWithDuration(1.0) [weak self] {
self?.coverView.alpha = appearing ? 1 : 0
}
}
EDIT:
Was ADInterstitialAd
s, die aus NSObject
zu erben scheinen und haben explizite Methoden, die Sie aufrufen müssen in Um sie zu präsentieren (presentInView:
und presentFromViewController:
). Daher gibt es keine öffentliche API, mit der gesteuert werden kann, wie diese Anzeigen geschaltet werden. Dies geschieht wahrscheinlich absichtlich, damit Apple garantieren kann, dass die Anzeige dem Nutzer angezeigt wird.
Nur eine nette Erinnerung, iAD wird von Apple im Juni 2016 geschlossen. – x4snowman
Nun, vielen Dank! War mir dessen nicht bewusst. Und der Ersatz wird von Apple zur Verfügung gestellt werden? – brumbrum
Kein Ersatz hier .. https://developer.apple.com/news/?id=01152016a – x4snowman