我在编写代码时遇到了麻烦,然后一切正常,然后开始出现此错误
“线程1:致命错误:展开包装时意外发现nil 可选值”
当我让我的单元格变量成为可重用单元格时,发生错误。
这是我的代码,该错误发生在声明let cell的第3行。
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let song = songs[indexPath.row]
let cell = tableView.dequeueReusableCell(withIdentifier: "SongCell") as! SongCell
cell.setSong(song: song)
return cell
}
更新:我已经修复了致命错误,但是现在我得到了
“线程1:信号SIGABRT”
当我添加此代码来设置表视图数据源和委托时,发生错误。
override func viewDidLoad() {
super.viewDidLoad()
songs = createArray()
playlists = createArray2()
tableView.dataSource = self
tableView.delegate = self
tableView2.dataSource = self //Adding this causes app to crash
tableView2.delegate = self //Adding this causes the app to crash
// Do any additional setup after loading the view, typically from a nib.
}
每当我删除此代码时,应用程序就会启动,但表格视图中不会显示任何单元格。
答案 0 :(得分:0)
您缺少DecRef
的第二个参数
DecRef
确保注册一个笔尖或课程
dequeueReusableCell
OR
let cell = tableView.dequeueReusableCell(withIdentifier: "SongCell", for: indexPath) as! SongCell