2015-03-20 4 views
1

Я занимаюсь созданием приложения iOS с помощью Swift и рекомендовал использовать раскадровку для каждой функции, так как каждая функция будет иметь около 10 представлений. Начиная с основной раскадровки, может ли кто-нибудь дать совет о том, как перейти между раскадровки с помощью Swift? В качестве альтернативы, есть ли что-то лучше, чем использовать несколько раскадровки, если я хочу избежать путаницы в виде главной раскадровки 50+?Подключение нескольких раскадровки в Swift

Вот что в конечном итоге работает:

let secondVC:UIViewController = UIStoryboard(name: "SecondStoryboard", bundle:nil).instantiateViewControllerWithIdentifier("numberTwo") as UIViewController 

@IBAction func changeStoryBoardButtonClicked(sender: AnyObject) { 
     presentViewController(secondVC, animated: false, completion: nil) 
} 

ответ

2

Когда ваше приложение должно перейти к новому контроллеру, которая находится в другой раскадровке, вы должны создать экземпляр нового раскадровки, а затем создать экземпляр первоначального контроллера вид там.

let sb = UIStoryboard(name: "SomeStoryboardName", bundle: nil) 
let vc2 = sb.instantiateInitialViewController() as UIViewController // or whatever the class is of that initial vc 
+0

Во-первых, большое вам спасибо. Я пробовал: пусть secondSB: UIStoryboard = UIStoryboard (название: "SecondStoryboard.storyboard", расслоение: ноль) пусть secondVC = secondSB .instantiateInitialViewController(), как UIViewController @IBAction FUNC changeStoryBoardButtonClicked! (Отправитель: AnyObject) { presentViewController (secondVC, анимированный: false, завершение: nil) } Получение ошибки, что UIViewController не имеет члена secondSB/secondVC. Исследовал эту проблему, но не смог ее решить. И делает ли моя функция изменения раскадровки? – iOSBeginner

+0

@iOSBeginner У вас не должно быть .storyboard на имя (хотя это может и не иметь значения). Вам нужно отредактировать свой вопрос, чтобы показать полный код внутри любых методов, которые вы им ставите. Я думаю, что у вас проблема с областью - secondVC и secondSB являются как локальными переменными, которые, как я думаю, но это поможет увидеть код в его контексте. – rdelmar

+0

Пожалуйста, см. Выше, за то, что в итоге работает! Благодаря! – iOSBeginner