У меня странная проблема с размещением некоторого контента (в данном случае рекламы Admob) в моем приложении.Мои представления стандартны UITableViewControllers
, и я хочу расположить объявления таким образом, чтобы они были закреплены в самом низу представления (хотя и над панелью инструментов).
Вот код, который я использую для размещения объявлений (это метод делегата, необходимый для Admob SDK).
- (void)didReceiveAd:(AdMobView *)adView {
// get the view frame
//CGRect frame = self.navigationController.view.frame;
CGRect frame = self.view.superview.frame;
// put the ad at the bottom of the screen
adMobAd.frame = CGRectMake(0, frame.size.height - 48, frame.size.width, 48);
[self.view.superview addSubview:adMobAd];
}
Этот код отлично работает для первоначального размещения рекламы, и объявление появляется в нижней части экрана, где я его хочу.Однако иногда рекламные объявления переходят на середину экрана после определенных действий пользователя.
Например, когда пользователь выбирает и вводит в табличном виде и следующий контроллер загружается в стек контроллера навигации.Когда пользователь переходит обратно к первоначальному контроллеру табличного представления, где находится объявление, объявление теперь будет в центре экрана, а не в нижней части.
Или если пользователь выберет кнопку, которая выдает новую modalViewController
, то же самое произойдет, когда modalViewController
будет отклонен.
Я закрепляю объявление в неправильном месте?Нужно ли мне всегда менять положение объявления при загрузке представления?Чего мне не хватает?