2012-09-04 7 views
10

Estoy tratando de obtener un banner en mi aplicación, pero desde que agregué el banner, la aplicación no se iniciará.iAd Banner no funciona

me sale un error que dice:

Terminación de aplicación debido a excepción no detectada 'NSInvalidUnarchiveOperationException', razón: 'No se puede crear una instancia de clase llamada ADBannerView'

Código en el archivo .h:

#import <iAd/iAd.h> 

@interface FirstViewController : UIViewController <ADBannerViewDelegate> 
{ 
    ADBannerView *banner; 
} 
@property (nonatomic,assign) BOOL bannerIsVisible; 
@property (nonatomic,retain) IBOutlet ADBannerView *banner; 

Código en el archivo .m:

@synthesize banner, bannerIsVisible; 

-(void)bannerViewDidLoad: (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 
{ 
    if(!self.bannerIsVisible) 
    { 
     [UIView beginAnimations:@"animatedAdBannerOff" context:NULL]; 
      banner.frame=CGRectOffset(banner.frame, 0.0, -320.0); 
     [UIView commitAnimations]; 
     self.bannerIsVisible=NO; 
    } 
} 

¿Qué crees que está mal?

Respuesta

1

Tome este código:

#import <iAd/iAd.h> 

@interface ViewController : UIViewController <ADBannerViewDelegate> { 
} 
@end 

archivo .m:

@implementation ViewController 

-(void)bannerViewDidLoadAd:(ADBannerView *)banner { 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:1]; 
    [banner setAlpha:1]; 
    [UIView commitAnimations]; 
} 

- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error { 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:1]; 
    [banner setAlpha:0]; 
    [UIView commitAnimations]; 
} 
@end 
19

Debe añadir iAd.framework en su proyecto.

+0

y también lo hacen self.canDisplayBanners = YES; – user2277872

+0

Buen ejemplo aquí: [31 días de iOS: día 29-Publicidad con iAd] (http://chrisrisner.com/31-Days-of-iOS--Day-29%E2%80%93Advertising-with-iAd) – leanne

+0

@lykant Bonita respuesta, respondí una pregunta similar y agregué algunas fotos, para aquellos a los que les importa echar un vistazo: http://stackoverflow.com/a/26172282/4018041 –

Cuestiones relacionadas