Как изменить имя класса UIViewController в UIStoryboard во время выполнения

У меня в раскадровке установлен этот UIViewController со всеми нужными точками, представлениями и ограничениями. Отлично. Давайте назовем этот WatchStateController, он будет служить абстрактным родительским классом.

Затем у меня есть этот подкласс WatchStateController, называемый WatchStateTimeController, который будет иметь функциональность, необходимую для определенного состояния приложения.

Поскольку я пытаюсь использовать контроллер представления 1 в UIStoryboard, у меня возникают некоторые проблемы в создании экземпляра WatchStateTimeController типа WatchStateTimeController - он создается как WatchStateController.

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

WatchStateTimeController *timeController = (WatchStateTimeController *)[mainStoryboard instantiateViewControllerWithIdentifier:@"WatchStateController"];

Это связано с тем, что в поле «Класс» инспектора идентификации раскадровки установлено значение «WatchStateController». Итак, вопрос в том, как мне просто изменить это имя класса, установленное в Identity Inspector во время выполнения?

ПРИМЕЧАНИЕ: игнорироватьПочему Я пытаюсь сделать это и сосредоточиться накак, Если вы действительно должны знать, почему, вы можете прочитать шаблон проектирования стратегии.

Ответы на вопрос(2)

Ваш ответ на вопрос