iAd广告是苹果官方广告平台,我们可以在iOS平台上放置iAd广告。对于在iAd中投放广告的商家有很高的门 ??制,不过相对而言对开发者的回报??较好,???的是,iAd广告?持的国家很少?。
?广告?????一样?在屏幕上,在屏幕中?一位置?有部分?间。?点???广告时,导航到另外的 一个应用或者?出模态??以?现广告的细节。点?关?广告按钮,可以回到原?的屏幕。
*无论?屏还是?屏的情况,??广告在不同iOS设备中的???是?定的,具体如下所示。
? *在iPhone 4以及之前设备和iPod touch第4代以及设备?屏的情况下,??广告的??是480×32。 ? 在iPhone 5和iPod touch第5代?屏的情况下,??广告的??是568×32。 ? *在iPhone和iPod touch?屏的情况下,??广告的??是320×50。 ? *在iPad?屏的情况下,??广告的??是1024×66。 ? *在iPad?屏的情况下,??广告的??是768×66。那么下面就是使用ADBannerView的几个步骤:
1、在使用iAd之前,?需要引入iAd 框架 (iAd.framework):
2、初始化ADBannerView方法:
self.bannerView=[[ADBannerView alloc] initWithFrame:CGRectZero]; self.bannerView.currentContentSizeIdentifier=ADBannerContentSizeIdentifierPortrait;//目前的banner类型 self.bannerView.delegate=self; //在父窗口下方显示 self.bannerView.frame=CGRectOffset(self.bannerView.frame, 0, 0); [self.view addSubview:self.bannerView];
别忘了ADBannerView有自己的协议方法需要实现。
@interface ViewController : UIViewController
3、创建动画的方法:
- (void)layoutAnimated:(BOOL)animated{ //在iOS 6中,广告栏是自动调整的 //为了支持iOS 5.0及以下版本,还需要设定currentContentSizeIdentifier// #if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_6_0// CGRect contentFrame = self.view.bounds;// if (contentFrame.size.width < contentFrame.size.height) {// self.bannerView.currentContentSizeIdentifier =// ADBannerContentSizeIdentifierPortrait;// } else {// self.bannerView.currentContentSizeIdentifier =// ADBannerContentSizeIdentifierLandscape;// }//#endif CGRect bannerFrame=self.bannerView.frame;// if(self.bannerView.userInteractionEnabled){//判断bannerView是否在画面内 // } if (self.bannerView.bannerLoaded) {//判断ADBanner是否加载成功 //设置在屏幕上边 bannerFrame.origin.y=0; }else{ //设置在屏幕外边,使之隐藏起来 bannerFrame.origin.y=-self.bannerView.frame.size.height; } [UIView animateWithDuration:animated?0.25:0.0 animations:^{ _bannerView.frame=bannerFrame; }];}//#if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_6_0//- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)//interfaceOrientation//{// return YES;//}//#endif
4、实现ADBannerView和UIScrollerView的协议
-(void)bannerViewDidLoadAd:(ADBannerView *)banner{ NSLog(@"广告加载成功"); [self layoutAnimated:YES];}-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error{ NSLog(@"广告加载失败"); [self layoutAnimated:YES];}-(void)bannerViewActionDidFinish:(ADBannerView *)banner{ NSLog(@"广告关闭"); [self layoutAnimated:YES];}#pragma mark UIScrollerView-(void)scrollViewDidScroll:(UIScrollView *)scrollView{ int page=scrollView.contentOffset.x/scrollView.frame.size.width; self.pageController.currentPage=page;}
那么ADBannerView广告横幅就基本完成,最后附上一张效果图: