айфон.настройка контроллера навигации - PullRequest
0 голосов
/ 02 ноября 2011

Я использую шаблон XCode, который генерирует проект контроллера навигации.

При запуске делегат загружает RootViewController с NavigationController сверху.

Я вижуnavigationBar с кнопкой возврата.

Теперь я нахожусь внутри viewDidLoad.

Как, во имя небес, я могу настроить это navigationBar?

ДажеПростая задача избавиться от кнопки «Назад» невозможна.

Что мне нужно, так это: поставить UIView, охватывающий всю область navigationBar (я буду использовать это для показа AdMob / iAds черезвсе приложение)

Как ДЕЙСТВИТЕЛЬНО получить доступ к панели навигации?

При этом не работает.

UINavigationBar *bar = [self.navigationController navigationBar];   
UIView *view = [[UIView alloc] intWithFrame: 0,0,320,50];
// put content inside view
[bar adSubview view];
[view release];

Ответы [ 2 ]

2 голосов
/ 02 ноября 2011

Вы не должны добавлять подпредставление к панели навигации (макет панели навигации по своему известному подпредставлению сам по себе соответствует размеру заголовка в зависимости от того, есть ли у него кнопка возврата, leftbtn, rightbtn и т. Д.)

Если вынеобходимо настроить фон, так как в iOS5 у вас есть свойство backgroundView

Если вы не хотите иметь кнопку возврата, просто установите свойство hidesBackButton UINavigationItem, связанное с соответствующим UIViewControllerДА. (Не можете пропустить это свойство в документации NavigationItem)

Если вам нужна какая-либо другая настройка, просто прочитайте документацию, там все объяснено.И в ссылках на классы UINavigationBar и UINavigationItem, а также в Руководство по программированию контроллера представления , которое объясняет все это и то, как каждый класс и компоненты взаимодействуют, чтобы заставить работать NavCtrl.

1 голос
/ 02 ноября 2011

Если вы вообще не хотите видеть или использовать панель навигации, но хотите видеть неприятную, всегда видимую рекламную панель в одной и той же точке на каждом экране, вы можете просто добавить свой рекламный вид в само окно, этозатем будет на верхней части вашего контроллера навигации и все, что он представляет.

Я не знаю, одобрит ли Apple ваш дизайн.Я не использовал iAds или многие приложения с ними, но, по моему опыту, они, как правило, находятся внизу экрана, а не вверху - может быть слишком большой потенциал для случайного нажатия на него, особенно с уведомлениями ios5.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...