2014-02-07 3 views
0

Я интегрируя MoPub в мое приложение, но натолкнулся на следующее сообщение об ошибке, когда я должен написать размер на баннерах: Неверный суффикс «x50» на целочисленной константыНеверный суффикс «x50» на целочисленной константы

self.adView = [[[MPAdView alloc] initWithAdUnitId:@"adUnitCode" size:320x50] autorelease]; 

Если он не работает, чтобы написать размер, как сказал MoPub, кто-нибудь знает, как я могу его написать?

ответ

1

Метод подписи:

- (id)initWithAdUnitId:(NSString *)adUnitId size:(CGSize)size 

так что вам нужно поставить CGSize. Это можно сделать с помощью CGSizeMake(320, 50) или постоянной, поставляемой MoPub: MOPUB_BANNER_SIZE.

Запись 320x50 выглядит как недопустимое целое число для компилятора, и это является причиной для описания проблемы.


Таким образом, удаление вашего вопроса ARC тоже необходимо импортировать константы

#import "MPConstants.h" 

и ваша линия будет:

self.adView = [[MPAdView alloc] initWithAdUnitId:@"adUnitCode" size:MOPUB_BANNER_SIZE]; 
+0

Благодаря @wain, но теперь я получаю следующее ошибка: ARC запрещает явное сообщение отправки «autorelease» и ошибки: «autorelease» недоступен: недоступен в режиме автоматического подсчета ссылок. – ThomasGulli

+0

Удалите вызов 'autorelease'. Помните, что код, который вы копируете, должен быть проверен для вашей ситуации, он не всегда будет «просто работать». – Wain

1

Он ожидает CGSize-структуру для параметра size:, так что попробуйте:

self.adView = [[[MPAdView alloc] initWithAdUnitId:@"adUnitCode" 
              size:CGSizeMake(320, 50)] autorelease];