Я пытаюсь переписать действие по умолчанию кнопки «Назад» в контроллере навигации. Я предоставил цели действие на пользовательской кнопке. Странно то, что при назначении его через атрибут backbutton он не обращает на них внимания, а просто выводит текущее представление и возвращается к корню:
UIBarButtonItem *backButton = [[UIBarButtonItem alloc]
initWithTitle: @"Servers"
style:UIBarButtonItemStylePlain
target:self
action:@selector(home)];
self.navigationItem.backBarButtonItem = backButton;
Как только я установлю его через leftBarButtonItem
на navigationItem
, он вызовет мое действие, однако тогда кнопка будет выглядеть как круглая, а не как стрелка назад:
self.navigationItem.leftBarButtonItem = backButton;
Как я могу заставить его вызвать моё собственное действие, прежде чем вернуться к корневому представлению? Есть ли способ перезаписать обратное действие по умолчанию или есть метод, который всегда вызывается при выходе из представления (viewDidUnload
этого не делает)?