iPhone - Выбор людей, можно ли изменить цвет и текст панели навигации?

Быстрый вопрос по iPhone. В настоящее время я использую средство выбора людей в своем приложении, я использую черную панель навигации в своем приложении, но средство выбора людей отображается синим цветом по умолчанию.

Я пытался:

picker.navigationBar.backgroundColor = [UIColor blackColor];

Однако он по-прежнему отображается синим цветом.

Можно ли изменить цвет панели навигации в средстве выбора людей? Или он всегда будет синим, поскольку это модальный вид системы?

РЕДАКТИРОВАТЬ:

Для цвета используйте следующие работы:

picker.navigationBar.tintColor = [UIColor blackColor];

Однако используя:

picker.title = @"MyText";

or

picker.navigationItem.title=@"MyText";

or

self.title=@"MyText";

Не работает, заголовок всегда остается "Все контакты"


person Donal Rafferty    schedule 30.05.2011    source источник


Ответы (2)


Цвет UINavigationBar контролируется его свойством tintColor.

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

В своей категории в методе init измените self.tintColor.

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

person Moshe    schedule 30.05.2011
comment
вы знаете, принимает ли магазин Apple приложения с измененным цветом адресной книги? - person Sefran2; 03.12.2011
comment
@Fran - Я думаю, что они использовали, но я не уверен. На данный момент вы не должны больше использовать такие категории, поскольку iOS 5 добавляет новые способы настройки собственных элементов управления пользовательского интерфейса. - person Moshe; 04.12.2011

для изменения цвета UINavigationController

self.navigationController.navigationBar.tintColor=[UIColor colorWithRed:42/256.0 green:60/256.0 blue:80/256.0 alpha:1.0];

Изменение текста UINavigationController

self.text = @"My New text" ;
person Jhaliya - Praveen Sharma    schedule 30.05.2011
comment
Спасибо, tintcolor работает, а self.text - нет, заголовок в Peoplepicker остается Все контакты - person Donal Rafferty; 02.06.2011