0

我已经完成了我的应用程序的构建,并开始尝试将亚马逊广告整合到我的应用程序中。我的项目中有一个桥接头,使用我的 swift 代码成功编译,但我创建了一个函数来加载横幅广告。我在视图控制器的 viewDidLoad 中调用该函数。我不断收到广告视图为零并且我的应用程序崩溃的错误。我不确定为什么会这样。

我为我的广告视图创建了一个空的@IBOutlet,以遵循快速入门指南

@IBOutlet weak var amazonAdView: AmazonAdView!

我加载广告的功能在这里:

func loadAmazonAd(){
    if ((amazonAdView) != nil) {
        amazonAdView.removeFromSuperview()
        amazonAdView = nil
    }

    let adFrame: CGRect = CGRect(x: 0, y: 20, width: UIScreen.main.bounds.width, height: 90);
    amazonAdView = AmazonAdView(frame: adFrame)
    amazonAdView.autoresizingMask = [.flexibleWidth, .flexibleLeftMargin, .flexibleRightMargin, .flexibleBottomMargin]
    amazonAdView.setHorizontalAlignment(.center)
    amazonAdView.setVerticalAlignment(.fitToContent)

    amazonAdView.delegate = self

    let options = AmazonAdOptions()
    options.isTestRequest = true
    amazonAdView.loadAd(options)
}

为什么我收到错误消息,为什么广告视图返回 nil?

4

1 回答 1

0

事实证明,我不应该创建一个空的@IBOutlet。这就是我收到错误的原因。只需更改此:

@IBOutlet weak var amazonAdView: AmazonAdView!

对此:

var amazonAdView: AmazonAdView!
于 2016-11-18T11:37:02.780 回答