UIwindow视图上的iAd横幅崩溃应用程序

时间:2013-12-09 08:11:52

标签: iphone ios7 iad uiwindow

我使用以下代码添加横幅:

- (void) addBunner {
    CGRect frame = CGRectMake(0.0,
                              self.view.frame.size.height-50.0,
                              320.0,
                              50.0);

    UIWindow* window = [UIApplication sharedApplication].keyWindow;
    if (!window) {
        window = [[UIApplication sharedApplication].windows objectAtIndex:0];
    }

    ADBannerView *adView = [[ADBannerView alloc] initWithFrame:frame];

    adView.delegate=self;    
    [window addSubview:adView];
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self addBunner];
}

添加了iAd.framework。

应用程序崩溃,日志中没有任何消息。哪里有问题?

2 个答案:

答案 0 :(得分:3)

由于您正在窗口中添加横幅,因此应用程序崩溃了。

原因:ADBannerView必须是UIViewController管理的视图层次结构的一部分。

所以在UIViewController中添加横幅。

答案 1 :(得分:1)

这不是在您的应用程序中管理iAD的最佳方式。与其他类一样,有很多方法可以实现,它们响应iAD Delegate,将iAD Banner添加到App。

我建议在使用之前阅读Apple Doc - Apple iAD Documentation