Я пытаюсь получить баннер iAd для отображения в нижней части экрана с помощью кода примера iAdSuite AdBannerNavigation в качестве отправной точки.Размещение значка iAd под UITableView
В iAd Suite вы создали представление баннера и добавили его в качестве подзаголовка. Когда вы делаете это с UITableView, вид баннера плавает вдоль поверх ячеек, перемещаясь в scrollview.
Я видел этот ответ iAds in a Scrolling View Но этот метод по-прежнему делает рекламный блок частью прокрутки.
Поэтому я думал, что простым решением будет разместить UITableView внутри UIView, чтобы adBanner также мог быть подчиненным для UIView (одноранговое представление таблицы).
RootViewController -> TextViewController
-> MyTableViewController -> UIView -> UITableView
-> AdBannerView
Это не сработало так как UITableViewController ожидает, что ее первый взгляд, чтобы быть вид таблицы.
Правильно понимая мою стратегию, я подтолкнул таблицу вниз в иерархии представлений и ее можно было использовать моим контроллером.
RootViewController -> TextViewController
-> MyViewController -> MyTableViewController -> UITableView
-> AdBannerView
Это делается с помощью viewDidLoad из MyViewController, где он называет:
myTableViewController = [[MyTableViewController alloc] initWithNibName:@"MyTableViewController" bundle:nil];
Затем, используя операторы NSLog в MyTableViewController, я вижу viewDidLoad вызывается, но ничего после этого. Я ожидал viewWillAppear и viewDidAppear, но не только эти инструкции NSLog никогда не вызываются, iOS Simulator никогда не отображает мой UITableView (что разумно, учитывая ситуацию!).
Я решаю это правильно (adBannerView является одноранговым узлом UITableView)? Если да, то что мне не хватает в контроллере представления и процессе создания представлений?
Моя цель - разбить вещи на эту структуру, чтобы MyViewController узнал о баннере iAd и сохранил это отдельно от логики UITableView (и наоборот).
Это выглядит многообещающим - спасибо за обмен! – tobinjim
«К сожалению, кажется, что лучший способ справиться с этой ситуацией - конвертировать ваш UITableViewController в обычный UIViewController, а затем действовать аналогично тому, как мы делали выше« нет, нет, нет! Позор на Рэй Вендерлих! Он должен был знать, как использовать заголовок таблицы. – malhal