Я развиваю игру, и я сохраняю дизайн уровня для конца. Во всяком случае, я сейчас здесь и сталкиваюсь с проблемами. Я хотел бы использовать один и тот же раскадровки для всех уровней, но просто измените класс раскадровки на другой контроллер представления. Я предполагаю, что наличие 50+ раскадровки в вашем проекте не очень хорошо, исправьте меня, если я ошибаюсь.Программно изменить класс раскадровки в Swift
Прямо сейчас это «образец» кода, который у меня есть, чтобы дать представление о том, что я хочу делать.
let storyboard = UIStoryboard(name: "Main", bundle: nil)
nextViewConroller = storyboard.instantiateViewControllerWithIdentifier("levelStoryboard")
storyboard.class = "Level" + String(currentLevel) + "Controller" // Purely concept code - does not work.
presentViewController(nextViewConroller, animated: true, completion: nil)
Мне непонятно, что вы пытаетесь сделать здесь или что вы думаете о том, что изменение «класса раскадровки» означало бы. Почему, по-вашему, вам нужны 50+ контроллеров? Что с ними связано и что вы пытаетесь повторить? Все ли они имеют один и тот же вид, и в этом случае почему вам нужно столько контроллеров? – Jonah
Насколько я понимаю ваш вопрос, я думаю, вам не нужен новый класс для каждого уровня, вам скорее нужен новый экземпляр вашего контроллера представлений. – Adam
Все уровни имеют разные функции, но могут использовать один и тот же раскадровки. Таким образом, у меня есть 50 контроллеров представлений, а Id - как пользовательский класс, найденный в инспекторе идентификации, чтобы перейти на соответствующий уровень. –