строки заголовка iPad. Navbars или панели инструментов?

Я вижу набор приложений для iPad с действительно прохладными строками заголовка. Они, кажется, комбинация панели навигации и панели инструментов. У них обычно есть кнопка "Назад" и заголовок, а также мужчины другие кнопки. И navbar только поддерживает левый объект, правильный объект и и представление заголовка. И панель инструментов действительно не поддерживает кнопки "Назад" или заголовки.

Таким образом, как я реализую эти богатые navbars со многими кнопками на моем UINavigationController управляемое приложение?

12
задан Alex Wayne 10 April 2010 в 02:26
поделиться

2 ответа

Вы можете получить этот эффект, поместив UIToolbar в свой UINavigationItem следующим образом:

self.navigationItem.title = @"My Title";    


UIToolbar *tb = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 100, 44)];
tb.items = [NSArray arrayWithObjects:button1,button2,button3,nil];

UIBarButtonItem *tbItem = [[UIBarButtonItem alloc] initWithCustomView:tb];
self.navigationItem.rightBarButtonItem = tbItem;

[tbItem release];
[tb release];

источник: этот блог через Google.

10
ответ дан 2 December 2019 в 20:16
поделиться

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

В качестве примера того, как это сделать, вы можете загрузить исходный код моего универсального приложения для iPhone / iPad Molecules и заглянуть внутрь SLSMoleculeAppDelegate, где я создаю контроллер разделения представления в коде, и SLSMoleculeiPadRootViewController, где я настроил панель инструментов и ее элементы.

4
ответ дан 2 December 2019 в 20:16
поделиться