#ios #objective-c #ios7 #iad
#iOS #objective-c #ios7 #iad
Вопрос:
Я создал проект без раскадровки и xib. У меня есть несколько просмотров, и я хотел, чтобы общий баннер отображался на всех представлениях. Я просмотрел пример кода, предоставленный Apple, и попытался использовать файлы BannerViewController.h и .m, но я не получаю никакого правильного вывода. Не могли бы вы, пожалуйста, рассказать мне, как правильно заставить iAd работать в моем проекте.
По ссылке ниже я скачал пример кода iAd https://developer.apple.com/library/ios/samplecode/iAdSuite/Introduction/Intro.html
Я добавил файлы bannerviewcontroller.h и m в свой проект.
В моем приложении MainViewController NSNotificationCenter не вызывается, и баннер не отображается.
#import "BannerViewController.h"
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(willBeginBannerViewActionNotification:) name:BannerViewActionWillBegin object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didFinishBannerViewActionNotification:) name:BannerViewActionDidFinish object:nil];
}
- (void)willBeginBannerViewActionNotification:(NSNotification *)notification
{
NSLog(@"Will begin banner view action notification");
}
- (void)didFinishBannerViewActionNotification:(NSNotification *)notification
{
NSLog(@"Did finish banner view action notification");
}
Пожалуйста, дайте мне знать, что я пропустил.
Заранее благодарю вас!
Комментарии:
1. Если вы не используете раскадровку или файл .xib, вам нужно установить свой rootviewcontroller в делегате вашего приложения… вы это сделали?
2. И вы на самом деле загружаете баннер? Можем ли мы увидеть ваш appdelegate и ваш код mainviewcontroller?
3. AppDel- (BOOL)приложение:(UIApplication *)приложение завершило запуск с параметрами:(NSDictionary *)Параметры запуска {self.window = [[UIWindow alloc] initWithFrame:[[UIScreen MainScreen] границы]]; если ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { self.ViewController = [[MainViewController alloc] initWithNibName:@»MainViewController_iPhone» bundle: nil]; } else { self.ViewController = [[MainViewController alloc] initWithNibName:@»MainViewController_iPad» bundle: nil];} self.window.RootViewController = self.ViewController; [self.window makeKeyAndVisible]; возвращает ДА; }
4. — (void)Начнет bannerviewactionnotification:(NSNotification *)уведомление{} — (void)Завершит bannerviewactionnotification:(NSNotification *)уведомление{} — (void)viewDidLoad{ [super viewDidLoad]; [[NSNotificationCenter defaultCenter] Сервер добавления:self selector:@selector (Будет начато bannerviewactionnotification:) имя:BannerViewActionWillBegin объект:nil]; [[NSNotificationCenter defaultCenter] Сервер добавления: self selector:@selector (didFinishBannerViewActionNotification:) имя:BannerViewActionDidFinish объект:nil];}
5. Я импортировал файл BannerViewController.h в свой MainViewController и вызываю уведомление в viewDidLoad. Я думал, что это вызовет BannerViewController и загрузит баннер. пожалуйста, помогите. немного запутался.