我正在开发一个实现 iAd 框架的应用程序。
基础 SDK 版本为 iOS 7。
最初,我首先将AdBannerView
对象放置在我想要的屏幕底部。由于我实现视图层次结构的方式,我发现旋转是一个问题,所以我最终不得不将IBOutlet
s 设置为NSLayoutConstraint
s 以在旋转时获得正确的高度。由于我最终不得不对值进行硬编码,这感觉就像我在破解,所以我去寻找其他解决方案。
我遇到了全新UIViewController
添加的文档canDisplayBannerAds
。这似乎是一颗银弹!只需将属性设置为即可YES
!
实际上,它工作得很好,几乎完美。我唯一的问题是:
- 加载时
UIViewController
,看不到 iAd。 - 显然,框架正在后台检查它是否可以获取广告,如果可以,则加载广告。
- 拥有广告后,它会以动画方式将广告添加到屏幕底部。
UIViewController
这涉及将's重新包装view
到一个名为originalContentView
. 好的。到目前为止,一切都很好。这有点烦人,但我仍然“免费”完成了很多工作。
我遇到的问题是,当这个动画发生时,我的视图没有响应。由于我已将此属性设置为YES
is my most-frequented UIViewController
s,这意味着我的应用程序的很大一部分存在“故障”,对于尝试以任何快速方式使用广告的用户来说,这将是非常明显的.
现在,我还没有对此进行广泛的测试,而且我的 Google-Fu 没有在这个问题上出现任何问题(除了对另一个 StackOverflow 问题的一个倾斜评论),所以我可能会误解我所看到的,但我认为这就是它的工作方式。
不过,在我看来,这不可能是理想的行为。使实施 iAd 的一个方面更容易从本质上不应该破坏您应用程序的另一部分,对吗?