2016-12-04 2 views
0

У меня есть следующий сценарий: у меня есть контроллер вида и вы хотите программно перейти в другое представление f.e. чтобы дать пользователю возможность изменять настройки.
Таким образом, у меня есть VC1 и VC_settings и модемный переход между этими контроллерами. Я дал segue идентификатор и назову его так:Открыть тот же вид с разных контроллеров просмотров

performSegue(withIdentifier: "SegueToSettingsView) 

Хорошо, это работает без проблем. Открывается окно настроек, и я могу вернуться к VC1.

Теперь я хочу иметь одинаковую функциональность в другом контроллере VC2. Я хочу повторно использовать представление настроек, но проблема в том, что segue уже подключен между VC1 и VC_settings, и я не могу подключить новый для VC2.
И если я попытаюсь вызвать существующий segue с coce выше в VC2, тогда приложение выйдет из строя.

ответ

0

В быстром можно создать segues из нескольких видов два вида viewcontroller. Здесь я установил его так, чтобы от VC1 до настроек и VC2 выполнялись настройки, которые должны работать. enter image description here

Надеется, что это помогло

+0

К сожалению, ваш скриншот немного запутанным для меня, потому что вы только показать зависимости. Но можете ли вы описать шаги в Xcode или дать небольшой фрагмент кода о том, как создавать/использовать segues? – altralaser

0

Поскольку у вас есть VC1 и VC_settings, связанный с Segue названием «SegueToSettingsView» также выполнение Селектор работает нормально.

В соответствии с вашей потребностью сделайте еще один шаг от VC2 до VC_Settings и укажите другое имя для него. затем используйте код ниже для выполнения segue.

performSegue(withIdentifier: "SegueToSettingsViewFromVC2") 

шаги, чтобы сделать SEGUE: enter image description here Затем выберите соединение и установить идентификатор

enter image description here

+0

Да, это была моя первая идея. Но проблема в том, что я выбираю VC_settings, смотрю под вкладкой соединений и «представляя segues», тогда я увижу, что «презентация модально» уже подключена. Это понятно, потому что это связано с VC1, но, похоже, невозможно сделать второй сеанс для одной и той же задачи? – altralaser

+0

Он будет находиться под управлением viewcontroller, где вы выполняете segue. – Saranjith

+0

Определенно вы можете сделать количество звонков как можно больше – Saranjith

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