iOS ADBannerView的简单使用

  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<UIScrollViewDelegate,ADBannerViewDelegate>

  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广告横幅就基本完成,最后附上一张效果图:

                                    技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。