Подтвердить что ты не робот

Панель навигации недоступна в Show Segue, Xcode 6.1

В моей раскадровке есть 2 контроллера просмотра, VC_A и VC_B

Я включил контроллер навигации в VC_A, который является контроллером представления таблиц, затем я управляю перетаскиванием ячейки Prototype в VC_B, чтобы создать сегмент. Если я выберем "show" в "select segue", а затем в VC_B, я смогу увидеть схему навигационной панели, но я не могу ее выбрать или добавить к ней какие-либо кнопки, она также не отображаются в иерархическом представлении.

view

Однако, если я выбираю параметр "push (deprecated)" при выборе типа segue, я могу выбрать панель навигации в VC_B и добавить к ней кнопки, она также отображается в иерархическом виде как элемент навигации.

Единственная работа, которую я могу найти, - это выбрать show, а затем изменить segue на push(deprecated) в Инспекторе атрибутов, чтобы элемент навигации отображался в иерархическом представлении, а затем изменил segue на show, Но я беспокоюсь, что это может вызвать проблемы в будущем.

Есть ли способ добавить кнопку "Бар" в навигационную панель VC_B, не используя работу?

4b9b3361

Ответ 1

Просто перетащите элемент "Навигация" из библиотеки объектов в панель навигации, и он должен работать как ожидалось. Вы можете вносить изменения по своему усмотрению и работать точно так же, как в Xcode 5.

Ответ 2

Интересно, что когда вы впервые установили соединение b/w с вашим контроллером табличного представления и диспетчером просмотра с помощью Push, вы можете начать редактирование навигационной панели без проблем (например, накладывать на нее элементы).

Затем удалите соединение между вашим контроллером табличного представления и контроллером представления (но не удаляйте только элементы навигационной панели), затем повторно подключите два контроллера используя segue Показать, вы увидите, что панель навигации работает так же, как segue Push.

Надеюсь, что это поможет

Ответ 3

Я думаю, что то, как вы это делаете (проходя через устаревший толчок), не ошибается, хотя есть и другой способ. Фактически, когда вы включаете Segue в push, вы получаете из него пункт навигации.

Итак, все, что вам нужно сделать, это добавить элемент навигации в контроллер просмотра, и это сделает трюк:

enter image description here

Ответ 4

В вашем viewController:

self.navigationItem.title = "Second VC"
self.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Play, target: self, action: "playFunction:")

enter image description here

Ответ 5

Это кажется ошибками Xcode.

В моем случае, я повторно создаю segue этой последовательностью:

  • Удалить существующий сегмент. (Я использую "Действие segue - Показать" )
  • Перетащите новый сегмент с помощью "Неадаптивного действия Segue - Push (устаревший)"
  • Удалить segue no.2
  • Повторно создайте/подключите "Action Seque - Show". (№1)
  • Готово

Теперь я могу редактировать заголовок навигации и добавлять пользовательскую кнопку навигации, как обычно.

Я использую Xcode 6.4 и минимальную целевую версию iOS версии 7.