Я следовал инструкциям здесь и здесь , которые предполагают, что у меня должна быть возможность создавать переходы для раскрутки / редактирования даже при использовании ссылки на раскадровку.
Процесс довольно прост:
PhotoDetailScene имеет ссылку на раскадровку EditHistoryScene и жест касания, чтобы вызвать переход, затем у меня есть кнопка закрытия на EditHistoryScene , которая раскручивается обратно к PhotoDetailScene .Настоящее прекрасно работает (пользовательский segue 'show' открывает EditHistoryScene), и если я использую вызов dismiss()
, он отклоняется нормально.Но разматывание с идентификатором segue всегда завершается неудачно с помощью:
EditHistoryScene has no segue with identifier 'UnwindEditHistorySegue'
В моем действии кнопки закрытия EditHistoryScene у меня есть:
func closeButtonPressed(_ sender: Any)
performSegue(withIdentifier: "UnwindEditHistorySegue", sender: self)
}
И в моем PhotoDetailScene я добавил:
@IBAction func unwindToPhotoDetailScene(_ unwindSegue: UIStoryboardSegue) {
print("It works!")
}
И вот как я настроил это в IB, с методом unwindToPhotoDetailScene()
, связанным с раскадровкой ссылка (так как это единственный способ, которым IB позволил бы мне ctrl + связать выход):
Представление segue: ![enter image description here](https://i.stack.imgur.com/lZ5Ri.png)
Развернуть свойства segu (и имя segue) ![enter image description here](https://i.stack.imgur.com/AViJj.png)
Ссылка раскадровки правильно установлена для раскадровки назначения: ![enter image description here](https://i.stack.imgur.com/KCTr7.png)
Точка выхода ссылки раскадровки подключена обратно кPhotoDetailScene: ![enter image description here](https://i.stack.imgur.com/w0OxZ.png)
Экземпляр раскадровки EditHistoryScene не подключен к @IBOutlet? ![enter image description here](https://i.stack.imgur.com/eM6vj.png)
Мое лучшее предположение, что он терпит неудачу, потому что это ссылка на раскадровку, а последовательность раскрутки определяется на tон ссылка , а не фактический экземпляр раскадровки.Но я не могу понять, как напрямую присоединить точку выхода EditHistoryScene к PhotoDetailScene.