我收到错误,因为swift dynamic_cast类是无条件的,
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell :CustomTableViewCell = tableView.dequeueReusableCellWithIdentifier("cell") as CustomTableViewCell; // error here
return cell
}
请帮我解决这个问题。 谢谢!
答案 0 :(得分:0)
dequeueReusableCellWithIdentifier()
返回AnyObject
类型的可选项。因此,强制型铸造会引起问题。如果您使用as?
进行类型转换将起作用我猜
var cell :CustomTableViewCell = tableView.dequeueReusableCellWithIdentifier("cell") as? CustomTableViewCell;
// cell will not be nil if you registered already. Bt this if check may be needed to supress the warning of optional use
if let _cell = cell{
}
答案 1 :(得分:0)
我找到了答案。要在viewDidLoad方法中添加以下命令,您应该注册自定义单元格类
self.tableView.registerClass(CustomTableViewCell.self, forCellReuseIdentifier: "cell")