表格视图下方的 iAd 横幅

Posted

技术标签:

【中文标题】表格视图下方的 iAd 横幅【英文标题】:iAd banner below tableview 【发布时间】:2015-08-03 05:44:39 【问题描述】:

我正在我的 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))

但是,横幅固定在顶部,而当我滚动时,它会在视图下方消失。相反,它应该始终位于一切之上。 此外,它覆盖了不可见的部分表格视图。 如何定义表格视图从横幅下方开始,或者如何将横幅移动到表格视图下方?

谢谢

【问题讨论】:

【参考方案1】:

要在顶部加载横幅,试试这个:

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.

希望对你有帮助:)

【讨论】:

对不起,它不起作用,我的实现也有同样的行为 您能否更清楚地了解“与您的实施相同的行为 我想要实现的是将横幅放在屏幕底部而不是叠加到表格上。您的实现给出了与我的完全相同的结果,顶部的横幅和叠加。我正在寻找底部的横幅而不是叠加它必须保持在前面并且表格必须在其下方滚动。 好的,所以在这种情况下,只需降低 tableView 的高度,我将更新代码

以上是关于表格视图下方的 iAd 横幅的主要内容,如果未能解决你的问题,请参考以下文章

在 UITableView 下方放置 iAd 横幅

在 Swift 中的标签栏上方显示 iAd 横幅

iOS 在 iPad 详细拆分视图中更改 iAD 横幅大小

iAd 横幅错误“iAd 实例过多”

如何添加包含 iAd 横幅视图的子视图?

iAd 横幅问题