AdWhirl轮换使用

时间:2011-10-12 11:03:58

标签: iphone adwhirl

我试图旋转AdWhirl横幅视图。 AdWhirl提供的唯一文档是:

  

6.2设备方向   某些广告网络(包括iAd)会因设备方向而改变广告尺寸。   如果您的应用程序支持旋转,您必须通过调用AdWhirlView.rotateToOrientation将方向更改转发到AdWhirlView:在您的UIViewController的should / willAutorotateToInterfaceOrientation:实现中,然后按照6.1进行重新调整。   如果您的应用程序的方向概念与UIDevice.orientation有所不同,您还必须实现AdWhirlDelegate.adWhirlCurrentOrientation以返回适当的值。

我正在尝试解决这个问题,到目前为止正确实施了adWhirlDidReceiveAd方法,但我无法正确调整和/或调整相关广告的大小。

3 个答案:

答案 0 :(得分:1)

在视图底部设置AdWhirl:here

滚动时将广告设为静态(即TableView):here

这是我使用AdWhirl旋转广告的方式(可能不是最佳解决方案......):

    awView.transform = CGAffineTransformIdentity;
    awView.transform = CGAffineTransformMakeRotation(degreesToRadian(-90));
    awView.bounds = CGRectMake(0.0, 0.0, 480, 320);

您需要根据视图更改坐标。

答案 1 :(得分:1)

[AdWhirlView rotateToOrientation]为每个当前网络适配器调用rotateToOrientation方法。 但是,某些网络适配器不会覆盖此方法。此方法的默认实现不执行任何操作。 因此,您需要覆盖rotateToOrientation方法。

接下来是AdMob网络适配器的示例实现。

AdWhirlAdapterGoogleAdMobAds.m

-(void)rotateToOrientation:(UIInterfaceOrientation)orientation {

    GADBannerView* adMobView;
    adMobView = (GADBannerView*)adNetworkView;

    switch (orientation) {
        case UIInterfaceOrientationPortrait:
        case UIInterfaceOrientationPortraitUpsideDown:
            adMobView.adSize = kGADAdSizeSmartBannerPortrait;
            break;
        case UIInterfaceOrientationLandscapeLeft:
        case UIInterfaceOrientationLandscapeRight:
            adMobView.adSize = kGADAdSizeSmartBannerLandscape;
            break;
        default:
            break;
    }
}

答案 2 :(得分:0)

在你的UIViewController实现中,添加shouldAutorotateToInterfaceOrientation:如下所示:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    if (interfaceOrientation is supported)
    {
        [adWhirlView_ rotateToOrientation:interfaceOrientation];
        return YES;
    }
    else
    {
        return NO;
    }
}

请注意,只要isAutorotateToInterfaceOrientation:实现,AdWhirlView将与其余布局一起旋转。但是,调用rotateToOrientation:会告诉AdWhirlView向广告转发方向更改信号,以便单个广告网络可以根据需要优化横向广告。