У меня есть специализированный ViewController ViewModel, подобный этому:
final class MyViewConrtoller<MyViewModel>: UIViewController {
var viewModel: MyViewModel?
override func viewDidLoad() {
super.viewDidLoad()
}
}
Я устанавливаю тип ViewController в InterfaceBuilder. Затем я пытаюсь создать его экземпляр следующим образом:
guard let myViewController = UIStoryboard(name: "StoryboardName", bundle: nil).instantiateViewController(withIdentifier: "MyViewController") as? MyViewController<MyViewModel> else { return }
И похоже, что приведение не удалось. Экземпляр действительно создан (до приведения), но когда он пытается его разыграть, возвращается ноль.
Есть ли что-то, что я пропускаю?
РЕДАКТИРОВАТЬ:
Глядя дальше, я нашел интересное решение, которое собираюсь опробовать. Вот ссылка для тех, кому это может понадобиться:
Ссылка раскадровки на UIViewController с Generi c