在tableview下面的iAd横幅

时间:2015-08-03 05:44:40

标签: swift uitableview uiview iad

我在tableview应用程序中以编程方式创建iAd 我在AppDelegate.swift我写的

中做了以下内容
import iAd

比我定义适当的变量

var bannerView: ADBannerView!

我定义了横幅本身的属性

bannerView = ADBannerView(adType: .Banner)
bannerView.setTranslatesAutoresizingMaskIntoConstraints(false)
bannerView.delegate = self
bannerView.hidden = true

最后,我在tableview控制器中调用以下内容

let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
view.addSubview(appDelegate.bannerView)

带约束

let viewsDictionary = ["bannerView": appDelegate.bannerView]
view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[bannerView]|", options: .allZeros, metrics: nil, views: viewsDictionary))
view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|[bannerView]", options: NSLayoutFormatOptions.allZeros, metrics: nil, views: viewsDictionary))

然而横幅固定在顶部,而我滚动的视图正在消失。相反,它应始终在一切之上。 此外,它覆盖了不可见的桌面视图的一部分。 如何定义tableview从横幅下方开始,或者如何在桌面视图下方移动横幅?

由于

1 个答案:

答案 0 :(得分:2)

要在顶部加载横幅,请尝试使用此横幅:

import iAd

class ViewController: UITableViewController, ADBannerViewDelegate {

var adBannerView:ADBannerView?

override func viewDidLoad() {
super.viewDidLoad()

adBannerView = ADBannerView(adType: ADAdType.Banner)
adBannerView?.delegate = self
//Initialize the banner and delegate
}

override func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
return adBannerView
}
//With this func the adBannerView is the header of your tableView.

希望有所帮助:)