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

2024-01-09 12:18

本文主要是介绍iOS开发笔记[19/50]:集成iAd广告,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在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;

  }

}

这篇关于iOS开发笔记[19/50]:集成iAd广告的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/587089

相关文章

Python+wxPython开发一个文件属性比对工具

《Python+wxPython开发一个文件属性比对工具》在日常的文件管理工作中,我们经常会遇到同一个文件存在多个版本,或者需要验证备份文件与源文件是否一致,下面我们就来看看如何使用wxPython模... 目录引言项目背景与需求应用场景核心需求运行结果技术选型程序设计界面布局核心功能模块关键代码解析文件大

Spring Boot 集成 mybatis核心机制

《SpringBoot集成mybatis核心机制》这篇文章给大家介绍SpringBoot集成mybatis核心机制,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值... 目录Spring Boot浅析1.依赖管理(Starter POMs)2.自动配置(AutoConfigu

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

SpringBoot集成iText快速生成PDF教程

《SpringBoot集成iText快速生成PDF教程》本文介绍了如何在SpringBoot项目中集成iText9.4.0生成PDF文档,包括新特性的介绍、环境准备、Service层实现、Contro... 目录SpringBoot集成iText 9.4.0生成PDF一、iText 9新特性与架构变革二、环

JAVA SpringBoot集成Jasypt进行加密、解密的详细过程

《JAVASpringBoot集成Jasypt进行加密、解密的详细过程》文章详细介绍了如何在SpringBoot项目中集成Jasypt进行加密和解密,包括Jasypt简介、如何添加依赖、配置加密密钥... 目录Java (SpringBoot) 集成 Jasypt 进行加密、解密 - 详细教程一、Jasyp

springBoot (springCloud2025)集成redisCluster 集群的操作方法

《springBoot(springCloud2025)集成redisCluster集群的操作方法》文章介绍了如何使用SpringBoot集成RedisCluster集群,并详细说明了pom.xm... 目录pom.XMLapplication.yamlcluster配置类其他配置类连接池配置类Redis

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

SpringBoot集成WebService(wsdl)实践

《SpringBoot集成WebService(wsdl)实践》文章介绍了SpringBoot项目中通过缓存IWebService接口实现类的泛型入参类型,减少反射调用提升性能的实现方案,包含依赖配置... 目录pom.XML创建入口ApplicationContextUtils.JavaJacksonUt

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二