如何使用确切的框架和展示位置ID启动revmob横幅广告?

时间:2012-10-25 12:15:27

标签: iphone ios xcode ipad revmob

我尝试使用RevMob中建议的代码显示带有特定展示位置ID的横幅广告但未成功,尝试使用以下代码:

RevMobAds *revmob = [RevMobAds revMobAds];
        RevMobBanner *banner = [revmob bannerWithPlacementId:@"ID_FROM_REV_MOB"];
        [banner showAd];

甚至试图添加以下声明

if (IS_iPad) {
        banner.frame =  CGRectMake(0, 958, 768, 66);
    } else if (IS_WIDESCREEN){
        banner.frame = CGRectMake(0, 518, 320, 50);
    } else {
        banner.frame = CGRectMake(0, 430, 320, 50);
    }

但没有成功,我能够展示横幅广告的唯一方法是:

[RevMobAds showBannerAdWithFrame:CGRectMake(0, 958, 768, 66) withDelegate:self];

但添加展示位置ID无效。

2 个答案:

答案 0 :(得分:5)

我认为您需要使用RevMobBannwerView来执行以下操作:

RevMobAds *revmob = [RevMobAds revMobAds];
        RevMobBannerView *revBannerView = [revmob bannerViewWithPlacementId:@"ID_FROM_REV_MOB"];
        if (IS_iPad) {
            revBannerView.frame =  CGRectMake(0, 958, 768, 66);
        } else if (IS_WIDESCREEN){
            revBannerView.frame = CGRectMake(0, 518, 320, 50);
        } else {
            revBannerView.frame = CGRectMake(0, 430, 320, 50);
        }
        [revBannerView loadAd];
        [self.view addSubview:revBannerView];
        [self.view bringSubviewToFront:revBannerView];

答案 1 :(得分:1)

当我在我的项目中添加它(RevMob版本5.9)时。我是这样做的:

[RevMobAds startSessionWithAppID:@"my id"];
RevMobBannerView *ad = [[RevMobAds session] bannerView]; // you must retain this object
[ad loadWithSuccessHandler:^(RevMobBannerView *banner) {
    banner.frame = CGRectMake(0, 381, 320, 50);
    [self.window.rootViewController.view addSubview:banner];
    NSLog(@"Ad loaded");
} andLoadFailHandler:^(RevMobBannerView *banner, NSError *error) {
    NSLog(@"Ad error: %@",error);
} onClickHandler:^(RevMobBannerView *banner) {
    NSLog(@"Ad clicked");
}];