2015-05-14 2 views
1

Это код:XCode 6: Я не могу выбрать вид его раскадровку ID

let theBoard = self.storyboard! 
let vc = theBoard.instantiateViewControllerWithIdentifier("myViewId") as! UIViewController // this line causes the error 

Вторая строка вызывает эту ошибку:

unexpectedly found nil while unwrapping an Optional value 

* ОЧЕНЬ ВАЖНО *: ошибка возникает только тогда, когда для конфигурации сборки установлено значение «debug». Он работает хорошо, когда установлено значение «release».

Почему?

+0

Вы уверены, что когда вы выпускаете это, вы увидите судьбу n раскадровка? –

+0

абсолютно, при выпуске отображает вид – Cherif

+0

Очистить проект и перестроить –

ответ

0

Вы вводите UIViewController в let vc = theBoard.instantiateViewControllerWithIdentifier("myViewId") as! UIViewController, что неверно. Вы должны попробовать:

var storyboard = UIStoryboard(name: "Main", bundle: nil) 

var vc = storyboard.instantiateViewControllerWithIdentifier("myViewId") as! ViewController 
0

Используйте как этот

var moveToNextVC:ViewController = self.storyboard?.instantiateViewControllerWithIdentifier("myViewId") as! ViewController 

self.presentViewController(moveToNextVC, animated: true, completion: nil) 

запомнить набор StoryboardID Определить 'myViewId' в файле Inspector для ViewController

0

Все это дело нового синтаксиса, функциональности не изменился:

let storyboard = UIStoryboard(name: "MyStoryboardName", bundle: nil) 
let vc = storyboard.instantiateViewControllerWithIdentifier("someViewController") as! UIViewController 
self.presentViewController(vc, animated: true, completion: nil) 
+0

Я пробовал это решение, но почему он работает в выпуске, а не в отладке? – Cherif

+0

Он работает для меня также в отладке. –

+0

Возможно, что-то где-то не так. Это то, что я ищу. – Cherif

Смежные вопросы