我一直试图在swift上实现Admob并且一切都很好,但我没有问题,因为我使用自定义表格查看单元格和"表格视图控制器"作为主swift文件,所以当我将BannerView拖入故事板即表视图控制器时,广告实际上出现在表视图的第一个单元格中!相反,我需要加载在tableview控制器的按钮不在单元格内?
@IBOutlet weak var bannerView: GADBannerView!
override func viewDidLoad() {
super.viewDidLoad()
self.bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
self.bannerView.rootViewController = self
var request: GADRequest = GADRequest()
request.testDevices = [GAD_SIMULATOR_ID]
self.bannerView.loadRequest(request)
// Uncomment the following line to preserve selection between presentations
// self.clearsSelectionOnViewWillAppear = false
// Uncomment the following line to display an Edit button in the navigation bar for this view controller.
// self.navigationItem.rightBarButtonItem = self.editButtonItem()
}
答案 0 :(得分:0)
一种解决方案可能是创建bannerView
的新实例,而不是将其作为插座,然后将其作为子视图添加到tableView的超级视图中。
答案 1 :(得分:-1)
我遇到了同样的问题,我用一种稍微不同的方法弄明白了 但它就像一个魅力。 所以对于那些刚接触Swift并面对这个问题的人来说,
如果您使用故事板,请从原型单元格中复制所有视图(ex标签,UIImage)
继续并删除您的View Controller。 (不要害怕,它最终会起作用,相信我)
拖动一个空白的ViewController,并在类中提及与早期tableView相关联的类。
同时拖动tableview并选择tableview,将约束形式添加到storyboard&下调> 0&左和右对 - > -20。
拖动一个tableview单元格,并选择该单元格,在类中提及您用于早期Tableview单元格的单元格类, (提示 - >你们是想要点击类下面的模块然后按回车键,我得到了一个愚蠢的错误{界面构建器错误中的未知类,当我这样做时}}
现在您只需选择单元格并将早期视图粘贴到其中,并使用单元类@IB outlet创建新连接。
在同一个Viewcontroller中,你可以拖动一个空的UIView并使其成为一个GADBannerView(按照谷歌浏览器指南浏览iOS)这一切都在IB中
现在转到你的tableview类,类扩展只是将它转到UIViewController,并确认协议UITableViewDataSource&的UITableViewDelegate。
ex:class Foo:UIViewController,UITableViewDataSource,UITableViewDelegate {
现在jus在viewDidLoad中添加这两行 Footableview.datasource = self Footableview.delegate = self