【发布时间】:2015-02-11 14:16:49
【问题描述】:
我正在使用 SpriteKit 开发一款游戏,我想实现 iAd。在我的应用程序启动后,横幅看起来很好,只是它覆盖了我的视图,如此处所示http://i.imgur.com/O9Gc6o6.png
在我将 iPhone 的方向更改为横向后,横幅消失了。当我将方向更改回纵向时它再次出现,但它的位置发生了变化:http://i.imgur.com/K3AqGl4.png
从此时起,横幅在方向更改为横向后可见,但也会发生移动。
这是我来自 UIViewController 的代码:
self.canDisplayBannerAds = true
adBanner = ADBannerView(frame: CGRect.zeroRect)
adBanner.delegate = self
adBanner.hidden = true
adBanner.frame.origin = CGPointMake(0.0, self.view.bounds.size.height - adBanner.frame.size.height)
self.view.addSubview(adBanner)
真正奇怪的是,这种位置转换只发生在我的 iPhone 上。在模拟器中测试它 - 没有问题。 Buddy 在他的 iPhone 上进行了测试 - 没问题。不过,开始时覆盖视图仍然发生。
发生了什么事?我没主意了。在过去的几个小时里,我试图在谷歌上找到它,但没有成功。提前致谢。
【问题讨论】:
-
首先,您是否在视图中使用自动布局?如果是这样,您希望使用自动布局约束来放置广告横幅,而不是简单地设置它的框架。
-
关于它的重叠,您将它放置在现有视图的顶部。为了防止重叠,您需要将视图的高度减少横幅的高度,然后将横幅放置在视图的底部。
-
哦。我的。上帝。我为什么不早点尝试呢?使用故事板放置 iAd 横幅并使用 IBOutlet 连接到代码后,一切正常。谢谢!!!顺便说一句,我仍然不明白为什么问题只出现在我的手机上......奇怪......
标签: ios swift sprite-kit iad