当没有网络连接时在iPhone上隐藏iAds
问题描述:
我试图在我的应用中包含iAds。当有网络连接,但是当网络不available..please找到下面的代码,并帮助me..thanks您的时间了网络成瘾者并不掩饰它工作正常..当没有网络连接时在iPhone上隐藏iAds
我在viewDidLoad中
包含在此代码static NSString * const kADBannerViewClass = @"ADBannerView";
if (NSClassFromString(kADBannerViewClass) != nil) {
if (self.adView == nil) {
self.adView = [[[ADBannerView alloc] init] autorelease];
self.adView.delegate = self;
self.adView.frame = CGRectMake(0,355,320,60);
self.adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifier320x50;
}
}
[self.view addSubview:self.adView];
委托方法:
- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
if (!self.bannerIsVisible) {
[UIView beginAnimations:nil context:NULL];
banner.frame = CGRectOffset(banner.frame, 0,10);
[UIView commitAnimations];
self.bannerIsVisible = YES;
}
}
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
if (self.bannerIsVisible) {
[UIView beginAnimations:nil context:NULL];
banner.frame = CGRectOffset(banner.frame, 0, -10);
[UIView commitAnimations];
self.bannerIsVisible = NO;
NSLog(@"%@",error);
}
}
答
如果我正确理解你的代码,你最初显示的旗帜。这是不正确的。当您收到bannerViewDidLoadAd:
后,最初将横幅移出屏幕,然后只在屏幕上移动它,并在收到bannerView:didFailToReceiveAdWithError:
时退出屏幕。
这也有一个好处,即您的横幅视图最初不会显示为空。如果网络连接速度较慢,会发生哪种情况。
答
You can do like this
Hide banner during viewdidload and write this in .m file.
-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error{
NSLog(@"Error loading iAd");
}
-(void)bannerViewDidLoadAd:(ADBannerView *)banner{
NSLog(@"Ad loaded");
self.banner.hidden = NO;
}
-(void)bannerViewWillLoadAd:(ADBannerView *)banner{
NSLog(@"Ad will load");
self.banner.hidden = NO;
}
-(void)bannerViewActionDidFinish:(ADBannerView *)banner{
NSLog(@"Ad did finish");
self.banner.hidden = NO;
}
感谢在viewDidLoad中的reply..so我应该设置bannerIsVisible为NO? – racharambola 2010-09-07 21:51:10
我试过了,但我认为我做了一个错误..我正在体验到你说的一切......最初有一段时间它显示为空,后来加载视图..如果你不介意,你能不能请建议我在哪里在我写的 – racharambola 2010-09-07 21:57:42
的代码中进行更改,您可以在“viewDidLoad”中将您的添加离屏。如果你只有一个状态栏,那么这个位置就是'(0,460)'。然后,广告加载完成后,您可以将整个广告查看动态化为50个像素。并缩减您的内容50个像素。查看WWDC iAds会议视频和幻灯片(免费),它详细描述了这项技术。 – 2010-09-07 23:36:33