AdMob横幅视图背景颜色是黑色,想要白色或透明

时间:2015-12-17 02:43:16

标签: ios admob

我无法弄清楚如何在广告不适合时更改我的AdMob横幅广告的背景颜色。这可能吗?下面的代码对我不起作用。

self.ad.backgroundColor= [UIColor whiteColor];

enter image description here

3 个答案:

答案 0 :(得分:4)

您可以将GADBannerView添加到您设置UIView的其他backgroundColor。这需要使用AdMob的default sizes来确保图片横幅正确合适。这样下降的基础是,基于文字的广告也会限制在此尺寸,而不是填充整个广告区域。

例如:

#import "ViewController.h"
@import GoogleMobileAds;

#define ADUNIT_ID @"yourAdUnitID"

@interface ViewController () <GADBannerViewDelegate> {
    GADBannerView *admobBanner;
    UIView *backgroundView;
}

@end

@implementation ViewController

-(void)viewDidLoad {
    [super viewDidLoad];

    // Create our AdMob banner
    admobBanner = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner];
    admobBanner.adUnitID = ADUNIT_ID;
    admobBanner.rootViewController = self;
    admobBanner.delegate = self;
    [admobBanner loadRequest:[GADRequest request]];

    // Create a view to put our AdMob banner in
    backgroundView = [[UIView alloc]initWithFrame:CGRectMake(0,
                                                            self.view.frame.size.height - admobBanner.frame.size.height,
                                                            self.view.frame.size.width,
                                                            admobBanner.frame.size.height)];
    // Hide view until we have an ad
    backgroundView.alpha = 0.0;

    // Set to color you require
    backgroundView.backgroundColor = [UIColor redColor];

    // Add our views
    [self.view addSubview:backgroundView];
    [backgroundView addSubview:admobBanner];

    // Center our AdMob banner in our view
    admobBanner.center = [backgroundView convertPoint:backgroundView.center fromView:backgroundView.superview];
}

-(void)adViewDidReceiveAd:(GADBannerView *)adView {
    NSLog(@"adViewDidReceiveAd");
    [UIView animateWithDuration:0.5 animations:^{
        backgroundView.alpha = 1.0;
    }];
}

-(void)adView:(GADBannerView *)adView didFailToReceiveAdWithError:(GADRequestError *)error {
    NSLog(@"adView:didFailToReceiveAdWithError: %@", [error localizedDescription]);
    [UIView animateWithDuration:0.5 animations:^{
        backgroundView.alpha = 0.0;
    }];
}

iPhone / iPad

enter image description here enter image description here

答案 1 :(得分:3)

这实际上是通过AdMob的信息中心实现的。

  1. 转到 AdMob.com
  2. 在顶部工具栏中选择获利
  3. 选择要更改背景颜色的左侧栏中的应用程序
  4. 选择横幅的广告单元
  5. 文字广告样式下拉菜单中选择自定义
  6. 选择背景颜色并将其更改为您想要的颜色
  7. 选择保存,您完成所有操作
  8. 可能需要几分钟才能在您的应用程序中显示更改。

    enter image description here

答案 2 :(得分:-1)

我认为你应该填写UIView相同Admob大小的矩形。

bannerView = GADBannerView(frame: rectBanner)
bannerView.adUnitID = "xxxxxxxxxxxxxxxxxx"
bannerView.rootViewController = self

帧大小(rectBanner)应与Admob Size匹配。