如何使iAd在我的应用程序中在全球范围内查看



我正在开发一个应用程序,我必须在应用程序的所有页面中显示iAd。。我创建了UIView的一个子类,在其中初始化ADBannerView及其委托方法。

但现在,如果我在AppDelegate类的窗口中添加它,它在运行时会给我以下错误"ADBannerView必须是UIViewController管理的视图层次结构的一部分"。。

我认为这意味着我只能在UIViewController的子类文件中使用ADBanner??

如果是这样的话,我该如何使其全球化??

提前感谢Shrya

在AppDelegate类中,您可以创建一个共享对象。

- (ADBannerView *) sharedBannerView
{
    if (_sharedBannerView == nil)
    {
        Class classAdBannerView = NSClassFromString(@"ADBannerView");
        if (classAdBannerView != nil)
        {
            _sharedBannerView = [[classAdBannerView alloc] initWithFrame:CGRectMake(0, 480, 320, 50)];
            // pre 4.2 doesn't have the new AdBannerSize constants. 
            if (&ADBannerContentSizeIdentifierPortrait != NULL)
            {
                [_sharedBannerView setRequiredContentSizeIdentifiers:[NSSet setWithObjects:ADBannerContentSizeIdentifierPortrait, ADBannerContentSizeIdentifierLandscape, nil]];            
            }
            else
            {  
                [_sharedBannerView setRequiredContentSizeIdentifiers:[NSSet setWithObjects:ADBannerContentSizeIdentifier320x50, ADBannerContentSizeIdentifier480x32, nil]];            
            }
        }   
    }
    ((ADBannerView *)_sharedBannerView).backgroundColor = [UIColor whiteColor];
    return _sharedBannerView;
}

并将此共享对象添加到需要显示iAds的视图中。希望你得到它。

最新更新