我的应用程序以横向模式运行。我不支持纵向显示,并且在所有屏幕中,如果将设备旋转为纵向显示,一切都如预期的那样是横向的。

我正在显示iAd标语,它们看起来不错,它们在应与 super 视图一起旋转时会旋转。横幅显示一切正常。

问题是,当我点击它们并打开实际的广告时,整个应用程序定位都变得很糟糕。 iAD在纵向模式下打开,其位置错误,偏移到屏幕的一半,并且与整个应用程序方向混淆,使其进入不受支持的怪异纵向模式。

关于如何避免这种情况的任何想法?

一些应用程序详细信息:

  • iOS6
  • 仅横向模式
  • Cocos2d + UIKit用于某些屏幕
  • iAds的集成代码是标准的,如iAds编程指南
  • 所述
  • 应用程序根视图控制器是一个简单的UIViewController,没有导航控制器或类似的东西。
  • 它不使用自动布局。
  • 最佳答案

    我还在Cocos2d-landscape游戏中使用了iAd。对我来说,它的工作。

    这是托管的文件:Download

    -(void)showBannerView
    {
        _adBannerViewIsVisible = true;
        AppController * myDelegate = (((AppController*) [UIApplication sharedApplication].delegate));
        [myDelegate.navController.view addSubview:self.adBannerView];
    
        if (self.adBannerView)
        {
            [UIView animateWithDuration:0.5
                                  delay:0.1
                                options: UIViewAnimationCurveEaseOut
                             animations:^
             {
                 CGSize s = [[CCDirector sharedDirector] winSize];
    
                 CGRect frame = self.adBannerView.frame;
                 frame.origin.y = s.height - frame.size.height;
                 frame.origin.x = (s.width/2.0f - frame.size.width/2.0f);
    
                 self.adBannerView.frame = frame;
             }
                             completion:^(BOOL finished)
             {
             }];
        }
    
    }
    

    关于ios - 在横向应用中打开iAd会影响整个方向,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14773580/

    10-10 21:12
    查看更多