Нарисовать пользовательскую кнопку "Назад" на панели навигации iPhone
У меня есть UIView с NavigationBar, и я хотел бы добавить кнопку, которая выглядит как стиль кнопки "Назад". Я не использую UINavigationController и мне было интересно, можно ли это сделать без него?
Стиль кнопки должен выглядеть следующим образом:
Спасибо
2 ответа
Вам нужно настроить пользовательский стек UINavigationItem
объекты и толкать их на UINavigationBar. Это единственный известный мне способ получить настоящую кнопку назад. Я не тестировал этот код, но вы должны сделать что-то вроде этого:
UINavigationItem *previousItem =
[[[UINavigationItem alloc] initWithTitle:@"Back title"] autorelease];
UINavigationItem *currentItem =
[[[UINavigationItem alloc] initWithTitle:@"Main Title"] autorelease];
[navigationBar setItems:[NSArray arrayWithObjects:previousItem, currentItem, nil]
animated:YES];
Чтобы обрабатывать нажатия кнопок, вы должны установить себя в качестве делегата панели навигации и реализовать делегаты UINavigationBarDelegate.
Вы также можете обновить это, изменив backBarButtonItem
на предыдущем контроллере представления (а не на текущем просмотре).