首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ADBannerView没有出现

ADBannerView没有出现
EN

Stack Overflow用户
提问于 2015-04-21 19:36:14
回答 2查看 441关注 0票数 0

我想把iAd旗放进我的游戏里!我已经在游戏中出演了很长一段时间,等待着苹果iAd广告的出现,但它并没有出现,它根本没有出现在我的屏幕上!

我做错了什么吗?

或者它最终会出现吗?

代码语言:javascript
复制
import iAd


var iAdBanner = ADBannerView()

var bannerVisible = false

class GameViewController: UIViewController, ADBannerViewDelegate{


override func viewDidLoad() {
    super.viewDidLoad()

    if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene {
        // Configure the view.
        let skView = self.view as SKView
        /* Set the scale mode to scale to fit the window */
        scene.scaleMode = .AspectFill
        skView.presentScene(scene)



        iAdBanner.frame = CGRectMake(0, self.view.frame.size.height, self.view.frame.width, 50)
        iAdBanner.delegate = self
        bannerVisible = false
    }
}

// Show banner, if Ad is successfully loaded.
func bannerViewDidLoadAd(banner: ADBannerView!) {
    if(bannerVisible == false) {

        // Add banner Ad to the view
        if(iAdBanner.superview == nil) {
            self.view.addSubview(iAdBanner)
        }

        // Move banner into visible screen frame:
        UIView.beginAnimations("iAdBannerShow", context: nil)
        banner.frame = CGRectOffset(banner.frame, 0, -banner.frame.size.height)
        UIView.commitAnimations()

        bannerVisible = true
    }

}

// Hide banner, if Ad is not loaded.
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
    if(bannerVisible == true) {
        // Move banner below screen frame:
        UIView.beginAnimations("iAdBannerHide", context: nil)
        banner.frame = CGRectOffset(banner.frame, 0, banner.frame.size.height)
        UIView.commitAnimations()
        bannerVisible = false
    }

}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-21 20:06:10

您尚未将横幅视图添加到视图中。您已经在self.view.addSubview(iAdBanner)中调用了bannerViewDidLoadAd,它在添加横幅视图之前不会被调用。您需要预先添加横幅视图(例如,在viewDidLoad中)。

另外,您不能将横幅视图框架更改为任何您想要的大小。

阅读横幅视图尺寸中的iAD编程指南(实际上阅读了整个指南)。它有代码段(但在ObjC中,而不是Swift中)。

它明确指出:

iAd支持不同的横幅大小的肖像和景观应用程序。广告的确切大小取决于横幅显示的设备。在iPhone上,肖像广告为320×50点,景观广告为480×32点。在iPad上,肖像广告为768x66点,景观广告为1024x66点。在未来,iAd可能会暴露更多的尺寸。

在下一段中:

为确保广告正确显示,必须始终调整横幅视图的大小,以与内置广告大小之一相匹配。ADBannerView类通过阻止您直接更改框架来强制执行此操作。相反,可以通过设置currentContentSizeIdentifier属性来更改横幅视图的框架。更改存储在此属性中的值将使横幅视图的框架大小与所提供标识符的大小匹配。

票数 2
EN

Stack Overflow用户

发布于 2015-08-10 05:49:31

也许可以检查您的故事板->包含iAd的视图控制器->视图属性检查选项卡->聚焦于扩展边缘,并取消选中此属性。希望能帮上忙。阅读这个答案的Tks。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29781557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档