如何在iPhone应用程序中实现广告,以避免在所有视图中重新加载广告



好的,我有这个多视图IPhone应用程序,我已经集成了adWhirl广告。这是好消息。坏消息是,我已经在每个视图控制器中实现了adWhirl广告,这意味着每次视图被推送时,都会创建一个新的adWhirl对象,这需要时间来加载AdMob/iAds广告。现在,我不禁想到这是解决问题的"错误"方式。问题是,我是否要在appDelegate的didFinishLaunching方法中创建一个单例ad对象然后在所有视图控制器中使用那个ad对象还是我所做的就是应该做的?

将广告放到appDelegate中,并从所有视图控制器中引用或子类化它。我刚刚完成了一个Tab Controller应用程序,有类似的要求。性能的提高也是一个不错的奖励。

你可以直接把它添加到appDelegate的窗口中。

[self.window addSubview:same_as_before.view];
[self.window addSubview:ad.view];
[self.window makeKeyAndVisible];

这样,它将始终在所有其他视图的顶部的同一位置,你不必再处理它。

最新更新