2013-04-05 4 views
1

Я не могу получить стандартную кнопку возврата iOS в navigationBar, потому что я не могу найти ее в библиотеке объектов, так что я могу сделать это с помощью кода или чего-то еще?Стандартная кнопка Back в XCode (XIB)

Мне просто нужна нормальная, стандартная, синяя кнопка назад - вы знаете, что я имею в виду.

ответ

2

Чтобы "автоматически" есть кнопка назад вам нужно сначала иметь UINavigationController. Тогда вам нужно взять другой UIViewController и добавить его в качестве контроллера представления корня в методе инициализации UINavigationController «s:

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:someOtherViewController]; 

Не забудьте также установить название для someOtherViewController, как правило, в этом viewDidLoad или инициализатор. Я скажу вам, почему это важно в второй:

self.title = @"Some other VC"; 

Затем возьмите вторую UIViewController и толкать его на навигационный контроллер:

[navigationController pushViewController:anotherViewController animated:YES]; 

Теперь у вас есть два UIViewControllers на навигационную стеке: someOtherViewController и anotherViewController.

У вашего вида теперь будет кнопка с кнопкой «Some other VC». Это название контроллера представления, который только что переехал из поля зрения:

Я также хотел бы предложить чтение на том, как UINavigationControllers работы и поиск этот сайт немного больше для настройки кнопки «Назад». В нем много нитей.

1

Вы не можете добавить кнопку «Назад» самостоятельно. Кнопка «Назад» является частью навигационного контроллера. Если вы введете контроллер навигации в свои представления, появится кнопка «Назад» и будет заполнена именем предыдущего вида.

Если вы используете раскадровки, выберите свой контроллер просмотра, затем в верхнем меню выберите «editor» -> «embed in» -> «navigation controller».


Edit: Here is an exmaple.

+0

Я использую xibs, так как мне это сделать? – Bart

+0

Оформить заказ @ Ответ Аарона – BloonsTowerDefence

0

Я запускаю Xcode 7.2. Это сводило меня с ума, но я понял это. Вот все, что вам нужно сделать, чтобы появилась кнопка «Назад» (сделать тестовый проект, чтобы это доказать):

1) У вас должен быть контроллер навигации, и он должен быть установлен в качестве начального контроллера представления. Поэтому добавьте контроллер навигации, вы импортируете две таблицы. Нажмите «Контроллер навигации» и в списке свойств установите флажок «Исходный контроллер просмотра». Теперь вы увидите и стрелку, указывающую на это представление.

2) В нашем случае нам нужен ViewController, а не включенный/подключенный TableViewController, поэтому удалите TableViewController (RootController) и добавьте новый ViewController.

3) Подключите контроллер навигации к новому ViewController, щелкнув верхнюю панель навигационного контроллера и оранжевую кружку, указав стрелку слева. Удерживайте кнопку Control на клавиатуре и щелкните и перетащите ее с оранжевого круга на ViewController и отпустите. При задании списка опций о том, как подключить два вида, выберите «контроллер корневого представления».

Выполнено! Теперь вы действуете на панели навигации, и вы автоматически получаете обратную стрелку на всех добавленных сегментах. Проверьте это. Добавьте еще один ViewController и подключитесь к нему с помощью кнопки существующего ViewController. Используйте подход Control-click-drag от кнопки до новейшего ViewController. Выберите параметр «показать» для нового созданного вами сегмента.

Запустить его. Когда вы нажмете кнопку и вы перейдете на новый ViewController, вы увидите, что опция «назад» автоматически появляется.

Все это обеспечивается контроллером навигации, но только когда вы делаете другой контроллер RootController. Счастливые навигационные!

Смежные вопросы