我的UIImageView
里有6xViewController
。我也给他们分配了踢踏手势。当用户点击图像时,执行segue。
我将这些ImageViews
添加到数组中,这就是应用程序崩溃的地方:
@IBOutlet weak var p0: UIImageView!
@IBOutlet weak var p1: UIImageView!
@IBOutlet weak var p2: UIImageView!
@IBOutlet weak var p3: UIImageView!
@IBOutlet weak var p4: UIImageView!
@IBOutlet weak var p5: UIImageView!
var playlistArray: [UIImageView] = []
override func viewDidLoad() {
super.viewDidLoad()
playlistArray += [p0, p1, p2, p3, p4, p5] // App crashes here
for index in 0..<playlistArray.count {
let playlist = Playlist(index: index)
let playlistImageView = playlistArray[index]
playlistImageView.image = playlist.icon
playlistImageView.backgroundColor = playlist.backgroundColor
}
}
我发现一个错误:
fatal error: unexpectedly found nil while unwrapping an Optional value
我做错什么了?所有
ImageViews
都已连接。注意,我正在学习一个教程,其中的代码实际上是
同样,因此将ImageView添加到数组的方法是
初级课程。
我设置了一个断点,我确信没有一个ImageViews是nil。
它们都连接得很好。
编辑:
我已经上传了我的项目。如果有人有空的话,我会很高兴看到那里可能出了什么问题:
https://www.dropbox.com/s/fj0tgi9st2xr7y5/s_PlaylistBrowser.zip?dl=0
最佳答案
我看过你的代码了。
基本上,您在DetailsViewController
中丢失了一个标签连接。
因为只有当你试图执行segue时程序才会崩溃。
不过,我不知道它为什么指向你提到的那条线。
关于ios - 奇怪的“致命错误:解开 optional 值时意外发现nil”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28658620/