标签: gadbannerview

如何为多个视图创建共享Admob横幅?

我在Xcode中使用Admob横幅构建了我的第一个应用程序.我的应用使用多个UIViews连接NavigationController,目前我正在申请新的广告UIView.

这就是我每个人都得到的UIViewController:

import GoogleMobileAds

class ViewController: UIViewController {

    @IBOutlet weak var bannerView: GADBannerView!

    override func viewDidLoad() {
        super.viewDidLoad()
        bannerView.adUnitID = "ca-app-pub-281379xxxxx/64134xxxxx"
        bannerView.rootViewController = self
        bannerView.loadRequest(GADRequest())
    }
}
Run Code Online (Sandbox Code Playgroud)

如何为所有视图实现" 共享 "横幅,这些视图可以单独class或通过单独管理AppDelegate.(我的所有观点都已经GADBannerView在底部了.)

我之前从未真正使用过委托方法,因为编码只是我的业余爱好而且我正在学习:Try&Error.但在这一点上,我的技能还不足以实现这一点.

我会很感激任何帮助:-).谢谢!

admob ios swift gadbannerview

7
推荐指数
0
解决办法
812
查看次数

如果视图不在视图层次结构中,则不会调用GADBannerView委托方法

我正在iOS上使用Google移动广告SDK并尝试展示一些广告.我的代码:

GADBannerView* bannerView = [[GADBannerView alloc] initWithAdSize:GADAdSizeFromCGSize(CGSizeMake(300, 250))];
bannerView.adUnitID = @"hidden";
bannerView.rootViewController = self;
bannerView.delegate = self;

GADRequest* request = [GADRequest request];
request.testDevices = @[ kGADSimulatorID ];

[bannerView loadRequest:request];
Run Code Online (Sandbox Code Playgroud)

如果我在bannerView上面看到的代码后面添加到视图层次结构,这可以正常工作.但是,我不想在加载广告之前添加它,所以我想延迟它.我注意到,如果bannerView不在视图层次结构中,则根本不调用委托方法.此外,我找到了这个答案,这与我所观察到的一致.另一方面,这是来自GADBannerViewDelegate标头的引用:

/// Tells the delegate that an ad request successfully received an ad. The delegate may want to add
/// the banner view to the view hierarchy if it hasn't been added yet.
- (void)adViewDidReceiveAd:(GADBannerView *)bannerView;
Run Code Online (Sandbox Code Playgroud)

这表明即使视图不在层次结构中也应该可以接收那些委托回调,这正是我想要的.所以,任何想法我怎么能实现这一目标?

delegates objective-c admob ios gadbannerview

2
推荐指数
2
解决办法
2538
查看次数

标签 统计

admob ×2

gadbannerview ×2

ios ×2

delegates ×1

objective-c ×1

swift ×1