繁体   English   中英

使用storyboard?.instantiate会返回“Unexpectedly found nil”错误

[英]Using storyboard?.instantiate returns “Unexpectedly found nil” error

我在使用storyboard?.instantiate时遇到错误storyboard?.instantiate 它给了我这个错误:

线程1:致命错误:在解开Optional值时意外发现nil

这是我的代码:

func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
    let vc = storyboard?.instantiateViewController(withIdentifier: "SelectedViewController") 
             as? SelectedViewController
    vc?.name = imgArr[indexPath.row]
    self.navigationController?.pushViewController(vc!, animated: true)
}

我已经在这张照片中使用了标识符ID

从这里转到照片

请有人在这个问题上帮助我。

将鼠标移到IB中的类字段上,然后单击“输入”,必须勾选模块检查,并验证是否正确设置了故事板标识符

在此输入图像描述

在集合视图的视图控制器的同一个故事板中是SelectedViewController吗?

我总是喜欢用后卫打开选项,或者让我们避免像这样崩溃。 您可以使用:

   guard let viewController = storyboard?.instantiateViewController(withIdentifier: "SelectedViewController") as? SelectedViewController else { "return error here if wanted" return }
    viewController.name = imgArr[indexPath.row]
    self.navigationController?.pushViewController(viewController, animated: true)

试试以下代码:

let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let vcTitles =  storyBoard.instantiateViewController(withIdentifier: "vcTitles") as! VCTitlesViewController
self.navigationController?.pushViewController(vcTitles, animated: true)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM