0

Контроллер моего представления имеет кнопку кнопки «Назад» на панели навигации (в UINavigationController). В текущем виде есть режим редактирования. Когда в режиме «edit» я заменяю leftBarButtonItem на кнопку «Отмена», когда выходите из режима «edit», я хочу снова изменить левую кнопку на кнопку «Назад», как я могу это сделать?Как удалить и добавить обратно кнопку «назад» на панели навигации

Я стараюсь self.navigationItem.leftBarButtonItem = self.navigationItem.backBarButtonItem, он просто удаляет кнопку «Отмена», но не возвращает «обратную кнопку».

Теперь я могу создать новый элемент навигации с пользовательским интерфейсом так же, как кнопка «Назад», и установить его как leftBarButtonItem, но позиция не такая же, как у нативной кнопки на задней панели, и потерял жест обратно.

Есть ли способ вернуть элемент на задней панели обратно на панель навигации?

+0

попробуйте отменить, так просто – sanjeet

+0

Кнопка «Назад» - это кнопка по умолчанию при использовании push-навигации. Вам необходимо прокомментировать код, связанный с 'leftBarButtonItem'. Также удалите указанную выше строку. Вы пытаетесь создать пользовательскую кнопку, которая выглядит как стандартная? – Kampai

+0

@ Kampai Я хочу по умолчанию. – zgjie

ответ

3

При выходе из режима редактирования, просто установить:

self.navigationItem.leftBarButtonItem = nil; 
0
  • В том же виде контроллер просто добавляет self.navigationItem.backBarButtonItem.title = @"Cancel"; в viewWillAppear.
  • И добавьте self.navigationItem.backBarButtonItem.title = @"Back"; в свой viewDidDisappear, чтобы вернуть текст кнопки вашего класса .m.

Чтобы установить Отмена:

- (void)viewWillAppear:(BOOL)animated 
{ 
    self.navigationItem.backBarButtonItem.title = @"Cancel"; 
} 

Установка Назад:

-(void)viewDidDisappear:(BOOL)animated 
{ 
    self.navigationItem.backBarButtonItem.title = @"Back"; 
} 
+1

Попробуйте это, это поможет вам решить. – svmrajesh

+0

Я не перехожу к новому виду, просто добавлю «редактируемое» состояние в текущее представление, когда в состоянии «редактирования» левая кнопка «Отмена», но когда выходите из режима «edit», я хочу получить значение по умолчанию " назад ". Благодарю. – zgjie

+0

Нет проблем. Просто измените текст заголовка для self.navigationItem.backBarButtonItem.title = @ "" в вашем состоянии редактирования и выхода. – svmrajesh

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