横向ipAd在iOS 6中显示肖像图形?

时间:2012-10-22 22:25:40

标签: iphone ipad ios6 orientation iad

我的应用程序以纵向方向运行,但内部内容随加速度计一起旋转。 我在屏幕底部显示了一个iAd。旋转时iAd改变了位置,但实际界面不旋转(shouldAutorotate返回NO,所有旋转都在OpenGL中处理)。因此定位iAd,然后设置转换以旋转它,以便为用户提供正确的方法。当应用程序处于纵向状态时,它就是纵向广告。在景观中,这是景观。自从iAds首次发布以来,这一直在完美运行......直到现在。

在iOS6中,iAd仍然正确定位,但无论我做什么,内容都不是。似乎iOS6 决定它应该显示哪种类型的广告。我认为这与自动调整有关。但我对如何阻止它很困惑。我最终将横向模式中的肖像图形显示在...一边...并因广告空间更薄而切断。

还有其他人看过这种行为吗?它只在iOS6下。有谁知道如何阻止iAd自动调整大小/旋转内容?

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

这可能是由于自动布局,iOS 6的一项新功能。检查故事板的第一个(“文件检查器”)标签,如果选中“使用Autolayout”,则可能是您的问题!

启用自动布局后,视图将基于“约束”,而不是之前可用的简单自动调整大小参数。这些约束覆盖了对子视图框架的大多数尝试性更改 - 因此可以解释您的问题。

可以继续使用自动布局并确保正确设置约束,但如果您依靠代码更改广告视图的位置/尺寸,我建议您只需禁用自动布局,应该< / em>让你的大小恢复正常!

答案 1 :(得分:0)

我想你在加载横幅时使用的方法类似于下面的方法吗?

 - (void)bannerViewDidLoadAd:(ADBannerView *)banner {

       self.bannerView.frame = CGRectZero;
 }

尝试将其更改为此类

 - (void)bannerViewDidLoadAd:(ADBannerView *)banner {

       self.bannerView.frame = CGRectMake(0, 0, 480, 32);
 }