您的位置:首页 > 移动开发 > IOS开发

iOS开发笔记[19/50]:集成iAd广告

2012-05-29 16:43 357 查看
在iPhone程序中集成广告,管他能不能赚钱,不放上一个iAd就心有不甘。

参考了下面这篇文章:

http://bees4honey.com/blog/tutorial/how-to-add-iad-banner-in-iphoneipad-app/

还参考这个Integrating iAds into an iOS 4 iPad App (Xcode 4)教程。

(1)加上iAd框架

在项目设置里的Build Phases的Link Binary With Libraries,加上iAd.Framework。

(2)

在xib界面里拖入一个ADBannerView

(3)修改ViewController的.h文件


#import <iAd/iAd.h>


加上委托


@interface myViewController : UIViewController <ADBannerViewDelegate>


加上输出口


IBOutlet ADBannerView *adView;

BOOL bannerIsVisible;




@property (nonatomic, retain) ADBannerView *adView;

@property (nonatomic, assign) BOOL bannerIsVisible;


(4)修改ViewController的.m文件

在viewDidLoad方法里:


adView.requiredContentSizeIdentifiers = [NSSet setWithObject:ADBannerContentSizeIdentifierPortrait];

adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;

adView.delegate = self;



在viewDidUnload方法里:


adView.delegate = nil;



另外:

为了防止iPhone网络异常时,iAd显示不出来时是一个空白区,可以在这2个方法再做点工作。


-(void) bannerViewDidLoadAd:(ADBannerView *)banner

{

if(!self.bannerIsVisible)

{

[UIView beginAnimations:@"animateAdBannerOn" context:NULL];

banner.frame = CGRectOffset(banner.frame, 0, -100);

[UIView commitAnimations];

self.bannerIsVisible = YES;

}

}




-(void) bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error

{

if(self.bannerIsVisible)

{

[UIView beginAnimations:@"animateAdBannerOff" context:NULL];

banner.frame = CGRectOffset(banner.frame, 0, 100);

[UIView commitAnimations];

self.bannerIsVisible = NO;

}

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: