我正在使用Revmob使用以下代码显示添加横幅。
[RevMobAds startSessionWithAppID:@“我的应用程序ID”];
[RevMobAds session] .testingMode = RevMobAdsTestingModeWithAds;
[[RevMobAds session] showBanner];
它在底部完美地展示了测试横幅。
现在我的问题是我想将此横幅设置在我的应用程序的顶部。
那么如何设置这个横幅框架呢?
我尝试过使用RevMobBannerView
我的代码是
RevMobBannerView * banner = [[RevMobBannerView alloc] initWithFrame:CGRectMake(0,100,320,50)];
[banner setBackgroundColor:[UIColor yellowColor]]; [banner loadAd]; [self.window addSubview:banner];
但它不起作用......它没有在屏幕上显示任何内容。
任何帮助都会得到帮助......
谢谢!
答案 0 :(得分:4)
RevMobBannerView *ad = [[RevMobAds session] bannerView];
ad.delegate = self;
[ad loadAd];
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
ad.frame = CGRectMake(0, 0, 768, 114);
} else {
ad.frame = CGRectMake(0, 0, 320, 50);
}
[self.view addSubView:ad];
答案 1 :(得分:2)
如果tkanzakic回答不起作用,您可以随时使用UIView将横幅放入并添加到视图中。在横幅加载委托中,将中间视图的大小调整为横幅边界。
修改强> 像
这样的东西ad = [[[RevMobAds session] bannerView] retain];
ad.delegate = self;
[ad loadAd];
- (void)revmobAdDidReceive {
intermediateView.frame = CGRectMake(0,0, somewidth, someheight);
ad.frame = intermediateView.bounds;
[intermediateView addSubview:ad];
}
答案 2 :(得分:1)
RevMobAds
对象具有RevMobBannerView
属性,此属性具有frame
。相应于documentation:
您可以使用此属性在屏幕中定义横幅的位置。默认值是屏幕底部的横幅
修改强>
尝试此设置框架:
RevMobAds *revMovAds = [RevMobAds startSessionWithAppID:@"My Application id"];
revMovAds.bannerView.frame = CGRect(x,y,xx,yy);
[revMovAds showBanner];
答案 3 :(得分:0)
当我在我的项目中添加它(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");
}];