Использование self.navigationItem.backBarButtonItem
устанавливает обратно бар элемент кнопки для следующего вида контроллера (например SecondViewController), который получает натягивается на навигационном стек, а не для просмотра контроллера тока (например FirstViewController).
Если вы хотите установить кнопку «Назад» для контроллера вида, который в данный момент находится в стеке, установите его так же, как вы делали с leftBarButtonItem
в текущем контроллере представления, или используйте backBarButtonItem
в контроллере представления, который выталкивает это новое представление на стек.
Причина, почему ни одна кнопка не обнаружился, когда вы использовали leftBarButtonItem
потому, что вы оставили название пустым вместо того, установив его на что-то вроде «Назад»
Примеры:
// Inside SecondViewController.m
//
// Customize left bar button item for SecondViewController
//
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:self.navigationController action:@selector(popToRootViewControllerAnimated:)];
Или
// Inside FirstViewController.m
//
// Customize the back bar button item for SecondViewController
//
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil];
Обратите внимание, что вам не нужно устанавливать цель или действие для backBarButtonItem
, так как он будет делать правильные действия.
есть ли метод параметр или нет? Действительно ли селектор действителен? – Wain
Опечатка, опечатка, нет. –
Что вы подразумеваете под селектором? –