Форум программистов, компьютерный форум CyberForum.ru

AdBannerView на все Views - Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование iOS/iPhone Разделение экрана на 2 зоны (ipad) http://www.cyberforum.ru/ios-dev/thread858447.html
Суть в чем: в приложении экран делится на 2 зоны. В первой - ScrollView, а во второй - NavigationController. Первая часть статична (в скрол вложена картинка с активными зонами), а вторая динамична (переход из ячеек таблицы NavigationController'а на вьюшку). Как в этом случае можно реализовать разделение экрана?
Программирование iOS/iPhone Обработка исключений Добрый день! Возник такой вопрос. Для того, чтобы поймать исключение необходимо написать @try{}@catch(){} и т.д.. Допустим где то я это забыл сделать и соответственно приложение закрылось ничего не написав. Как мне вывести какую нибудь информацию об исключении, которое закрыло приложение? Пробовал NSSetUncaughtExceptionHandler задавать, но он не срабатывает на исключение : index Х beyond... http://www.cyberforum.ru/ios-dev/thread858098.html
Событие отпускания кнопки Программирование iOS/iPhone
Добрый день форумчане. Как реализовать событие отпускание кнопки? Когда нажимаю кнопку, при ее отпускание, вызывался бы какой нибудь метод
Cornerstone Программирование iOS/iPhone
Доброго времени суток! Вопрос по программе Cornerstone. Я создал рабочую копию проекта, но доделывал проект не в ней, а в другой папке (на то были свои причины). Как теперь закоммитить эту папку, не испортив предыдущие коммиты?
Программирование iOS/iPhone Нужен исходный код конвертера валют для ios http://www.cyberforum.ru/ios-dev/thread856269.html
Доброго времени суток! Подскажите где можно брать исходники для ios стандартных программ, таких как "Конвертер Валют"?
Программирование iOS/iPhone IPhone 3G Не удалось подключиться к сети Wi-Fi Хай всем. У меня произошла проблемка помогите! IPhone 3G Не удалось подключиться к сети Wi-Fi ,он видет сеть но подключится не может !ПОМОГИТЕ буду очень благодарен. ... подробнее

Показать сообщение отдельно
Монфрид
1194 / 1004 / 153
Регистрация: 07.03.2012
Сообщений: 3,243
Завершенные тесты: 2

AdBannerView на все Views - Программирование iOS/iPhone

08.05.2013, 15:31. Просмотров 774. Ответов 4
Метки (Все метки)

Хочу вставить баннер на большинство views. В основном используются TableView. Решил для баннера использовать TableHeader у TableView. Apple рекомендует в таких случаях не создавать баннеры для каждого окна, а использовать один (shared).
Создал такой класс:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#import <Foundation/Foundation.h>
#import <iAd/iAd.h>@interface AdManager : NSObject <ADBannerViewDelegate>
@property (nonatomic, strong) ADBannerView *bannerView;
+ (AdManager *)sharedInstance;
 
#import "AdManager.h"
 
@implementation AdManager
@synthesize bannerView;
 
+ (AdManager *)sharedInstance
{
    static AdManager *sharedInstance = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        sharedInstance = [[AdManager alloc] init];
    });
    return sharedInstance;
}
 
-(instancetype)init
{
    if (self=[super init]) {
        bannerView = [[ADBannerView alloc] init];
        bannerView.delegate=self;
    }
    return self;
}
В AppDelegate создаю экземпляр этого класса. И в TableView's подписываюсь на notification которые идут от баннера.
И соответственно, при наступлении события гружу баннер в header.
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
-(void)viewWillAppear:(BOOL)animated
{
    if (self.appDelegate.bannerView.isBannerLoaded)
        [self bannerLoadedSuccess:nil];
    
    [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(bannerLoadedSuccess:) name:@"BannerLoaded" object:nil];
    [self.tableView reloadData];
    [super viewWillAppear:animated];
}
 
-(void)bannerLoadedSuccess:(NSNotification *)notification
{
    NSLog(@"notification! tbl1");
    self.tableView.tableHeaderView=self.appDelegate.bannerView;
}
 
-(void)viewWillDisappear:(BOOL)animated
{
    [[NSNotificationCenter defaultCenter]removeObserver:self];
    self.tableView.tableHeaderView=nil;
    [super viewWillDisappear:animated];
}
Для примера, создал TabBar c 2мя TableViewController'ами. На обоих tableView один и тот же код, который я привёл выше. Когда один tableView используется для баннера, то всё хорошо, как только использую два, ничего не работает.

Проект прилагаю ниже. Буду сильно благодарен за помощь.BannerOnAllViews.zip
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru