Изменение позиции и размещения iAd - PullRequest
0 голосов
/ 18 декабря 2011

Я просматривал различные учебные пособия и фрагменты кода, попробуйте реализовать iAd. В какой-то степени я добился успеха, но мне нужно настроить, я не могу понять, что мне нужно сделать, чтобы внести свои изменения, кто-нибудь может помочь?

- (void)viewDidLoad
{
adView = [[ADBannerView alloc] initWithFrame:CGRectZero];
adView.frame = CGRectOffset(adView.frame, 0, -50);
adView.requiredContentSizeIdentifiers = [NSSet setWithObjects:ADBannerContentSizeIdentifierPortrait, ADBannerContentSizeIdentifierLandscape, nil];
adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;
[self.view addSubview:adView];
adView.delegate = self;
self.bannerIsVisible = NO;
[super viewDidLoad];

// Do any additional setup after loading the view from its nib.
}

- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
if (!self.bannerIsVisible)
{

    [UIView beginAnimations:@"animateAdBannerOn" context:NULL];
    // banner is invisible now and moved out of the screen on 50 px
    banner.frame = CGRectOffset(banner.frame, 0, 50);
    [UIView commitAnimations];
    self.bannerIsVisible = YES;
}
}

- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
if (self.bannerIsVisible)
{
    [UIView beginAnimations:@"animateAdBannerOff" context:NULL];
    // banner is visible and we move it out of the screen, due to connection issue
    banner.frame = CGRectOffset(banner.frame, 0, -50);
    [UIView commitAnimations];
    self.bannerIsVisible = NO;
}
}

В таком виде баннеры загружаются вверху UIWebView. Во-первых, мне бы хотелось, чтобы оно было внизу, а во-вторых, объявление перекрывает контент WebView. Можно ли как-то нажать на него, когда объявление загружается или исчезает?

Буду признателен за любую помощь, это за рулем!

Спасибо.

Ответы [ 2 ]

2 голосов
/ 15 октября 2012

установите adview.frame.origin.y на любое дно, которое вы хотите, , когда , если вы этого хотите. Например, мой iad настроен в делегате приложения, затем в контроллере представления, который я хочу, в viewwillapear я бы использовал adview.frame.origin.x = 0; adview.frame.origin.y = 420; [SharediAdView setframe: adview.frame];

с настройками различий в зависимости от iphone 3,5 дюйма / 4 дюйма, места в текущем контроллере вида и ориентации.

Если вы предпочитаете перемещать все вверх / вниз и не хотите связываться с индивидуальным решением, я бы попробовал это: https://github.com/chrisjp/CJPAdController

0 голосов
/ 24 декабря 2012
adView.frame = CGRectMake(0.0, 375.0, iAdView.frame.size.width, iAdView.frame.size.height);

Используйте этот код вместо

adView.frame = CGRectOffset(adView.frame, 0, -50);
banner.frame = CGRectOffset(banner.frame, 0, 50);
banner.frame = CGRectOffset(banner.frame, 0, -50);

и измените размещение рекламы (375,0) в соответствии с тем, что вы хотите:)

...