IOS / Objective-C / Storyboard: кнопка «Назад» контроллера нажатого вида не активна - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть VC, который помещает другой VC в стек, используя код и ссылаясь на его идентификатор раскадровки. Тем не менее, по какой-то причине кнопка «Назад» недавно нажатого VC не работает и говорит «Назад» вместо имени VC, который выдвинул его, как обычно.

Код в представлении VC выглядит следующим образом:

UIStoryboard * storyBoard = self.storyboard;

IDProfilePicVC *picVC =
[storyBoard instantiateViewControllerWithIdentifier:@"addprofile"];
//push using existing nav
[self.navigationController pushViewController:picVC animated:YES];

Пока код успешно помещает новый VC в стек, кнопка говорит «Назад» вместо имени первого VC и, кроме того, неактивна. При нажатии ничего не происходит.

Я использую этот код в другом месте приложения, и он ведет себя как ожидалось. В первом или втором VC нет кода, который бы сделал заднюю кнопку неактивной, и я не могу понять, почему это происходит. Я также, кстати, установить заголовок в коде в viewdidload.

Существуют ли какие-либо другие настройки, например, в раскадровке, которые могут объяснить это поведение? Второй VC встроен в nav или сам по себе, но он в данном случае обходится без nav.

Редактировать:

Я удалил лишнюю навигацию (в которую был встроен второй виртуальный канал), и она ничего не изменила

Второе редактирование

С первого VC я смог без проблем перейти на другой VC. И когда я перешел с другого VC на второй VC, я получил неработающую кнопку Back. Это говорит о том, что проблема в некоторых настройках второго ВК. Второй ВК открывается, у него просто нерабочее «Назад» для кнопки «Назад» вместо работающей кнопки «Назад» с именем отправляющего ВК.

Заранее спасибо за любые предложения.

1 Ответ

0 голосов
/ 05 сентября 2018

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

...