К
Unrecognized selector sent to instance
- яркая демонстрация этой проблемы. Рантайм языка пытается вызвать функцию по другому названию, не находит её в объекте и всё падаетSize: a a a
К
Unrecognized selector sent to instance
- яркая демонстрация этой проблемы. Рантайм языка пытается вызвать функцию по другому названию, не находит её в объекте и всё падаетVK
К
Ԥ
ШД
ШД
n
И
n
S
Э
.performSegue(withIdentifier: "
goToDetail", sender:
self)
func prepare(for segue: UIStoryboardSegue, sender:
Any?)
, где передал бы данные внутрь страницы.И
n
KS
.performSegue(withIdentifier: "
goToDetail", sender:
self)
func prepare(for segue: UIStoryboardSegue, sender:
Any?)
, где передал бы данные внутрь страницы.protocol MyRouterDelegate {
func performNavigation(_ route: MyRoute)
}
extension MyRouterDelegate where Self: UIViewController {
func performNavigation(_ route: MyRoute) {
self.performSegue(withIdentifier: route.rawValue)
}
}
epare(for segue: UIStoryboardSegue, sender: An
y?) п
ередай всю инфу роутеру, он уже достанет дестинейшен vc и отконфигурирует егоЭ
protocol MyRouterDelegate {
func performNavigation(_ route: MyRoute)
}
extension MyRouterDelegate where Self: UIViewController {
func performNavigation(_ route: MyRoute) {
self.performSegue(withIdentifier: route.rawValue)
}
}
epare(for segue: UIStoryboardSegue, sender: An
y?) п
ередай всю инфу роутеру, он уже достанет дестинейшен vc и отконфигурирует егоKS
KS
enum MyRoute {
case detail(id: ID)
case add
}
Э
KS
router.navigateToDetailScreen()
роутер в свою очередь дергает delegate.performNavigation(.detail)
, т.к. делегат роутера ViewController он дернет performSegue
, как UIKit подготовит для вас контроллер вызовет prepareForSegue
у этого ViewController'а и он запроксирует этот вызов роутеру. Роутер донастроит контроллер и segue выпоонится.