2017-04-10 25 views
0

可選的值我有switch method通過拆用的UIViewController

case 1: 
    let loginVC = storyboard.instantiateViewController(withIdentifier:"LoginVCID") as! LoginViewController 
    mainNVC.viewControllers = [loginVC] 

      break 
case 2: 
    let mainVC = storyboard.instantiateViewController(withIdentifier:"MainVCID") as! MainViewController 
    mainNVC.viewControllers = [mainVC] 

      break 

兩個代碼當我的代碼在案例1運行,效果很好。 但是,當它運行在案例2,它與此錯誤崩潰:

fatal error: unexpectedly found nil while unwrapping an Optional value

什麼事?

+2

我會交叉檢查標識符名稱 – OverD

+2

我猜第二個視圖控制器的類沒有設置爲自定義類。並且請注意,在Swift中你不需要'bre​​ak'。 – vadian

+0

檢查「MainVCID」故事板標識符是否存在,並確保該類是否爲MainViewController –

回答

0

首先:檢查標識符「MainVCID」在你的故事板的身份檢查拼寫正確(第二部分:身份,故事板ID)

:檢查MainVCID的類是類MainViewController節定製類以上

由於第一個是工作的罰款我猜你做了一點點失誤憨頭憨腦:)

+0

guard let mainVC = storyboard.instantiateViewController(withIdentifier:「MainVCID」)as? MainViewController else { return false } –

+0

我用此代碼對其進行了檢查。但是,它仍然墜毀:( –

0

嘗試刪除break命令,你不在Swift中不需要它們。

+0

哦,我很抱歉。 –