返回nil的自定义类的表视图单元格

时间:2017-02-19 14:05:58

标签: ios uitableview swift3 cell tableviewcell

我正在创建一个表,并使用此代码生成单元格:

let cell2:iPRoutineSpecificCell = self.routineSpecificsTable.dequeueReusableCell(withIdentifier: "Cell2") as! iPRoutineSpecificCell

单元格包含标签。当我说

cell2.label.text = "Test"
return cell2

我收到错误:

  

致命错误:在解包可选值时意外发现nil

我在应用程序的其他地方有这个确切的安排,它工作正常。为什么这次不工作?两个视图之间的唯一区别是这个视图包含两个表。但是,如果我使用:

cell2.textLabel?.text = "Test"

然后它有效。

任何帮助表示赞赏!

3 个答案:

答案 0 :(得分:3)

如果您有 - :

,请从viewDidLoad方法中删除此行
self.tableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "cell")

答案 1 :(得分:0)

textLabelUITableViewCell的原生字段。它被定义为一个Optional,这就是为什么当你设置的文本为nil时它不会崩溃的原因。

您正在设置的自定义标签可能被定义为非可选标签(可能是IBOutlet)。 确保通过将标签拖动到正确的插座来正确连接故事板中的标签。

答案 2 :(得分:0)

您需要将自定义单元格注册为:

google_html = open('google.html', 'w')
google_html.write(str(soup.prettify()))
google_html.close()