3

我在禁用 wifi 的情况下运行我的应用程序,我总是在调试器中得到空白和这条消息:

ADBannerView:未处理的错误(没有委托或委托未实现 didFailToReceiveAdWithError:):错误域 = ADErrorDomain Code = 5“操作无法完成。横幅视图可见但没有内容” UserInfo = 0x9632d30 {ADInternalErrorCode = 5, NSLocalizedFailureReason=横幅视图可见但没有内容}

请帮我修复我的代码:.h

#import <iAd/iAd.h>
@interface ViewController : UIViewController  <GKAchievementViewControllerDelegate, GameCenterManagerDelegate , ADBannerViewDelegate> {


//iAD
ADBannerView *banner;  
 }

//iAD
@property (nonatomic, assign) BOOL bannerIsVisible;
@property (nonatomic, retain) IBOutlet ADBannerView *banner;  

.m

@synthesize  banner , bannerIsVisible;
-(void)bannerViewDidLoadAd:(ADBannerView *)abanner {
if (!self.bannerIsVisible) {
    [UIView beginAnimations:@"animatedAdBannerOn" context:NULL];
    banner.frame = CGRectOffset(banner.frame, 0.0, 50.0);
    [UIView commitAnimations];
    self.bannerIsVisible = YES;
}}

-(void)bannerView:(ADBannerView *)aBanner didFailToReceiveAdWithError:(NSError *)error {
if (!self.bannerIsVisible) {
    [UIView beginAnimations:@"animatedAdBannerOff" context:NULL];
    banner.frame = CGRectOffset(banner.frame, 0.0, -50.0);
    [UIView commitAnimations];
    self.bannerIsVisible = NO;
}

}
4

3 回答 3

6

根据错误的委托部分。在您的 viewDidLoad(或您初始化的任何地方)方法集中banner.delegate = self;

于 2012-07-28T22:53:54.370 回答
2

对 iOS 开发完全陌生,但我相信您需要在情节提要中设置 adBanner 视图委托。为此,请右键单击广告横幅并拖动到文件所有者。然后选择委托。这为我解决了这个问题:)。

于 2014-09-06T20:59:33.947 回答
1

您可能需要在接口 Builder (IB) 中设置委托。否则,当视图加载时,没有分配委托,您将收到此错误消息。

于 2014-03-03T22:42:46.993 回答