UITableViewController不使用xib文件加载自定义单元格

时间:2017-12-03 09:01:25

标签: ios swift

我有一个UITableViewController,想要用自定义单元格填充它。我创建的单元格拥有自己的类和xib文件,远离主故事板。

在xib文件中,我有' VisitCell'作为标识符。

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: "VisitCell", for: indexPath) as! VisitCell

    let visit : BookingVisitItem = bookingDayItem.getVisitItems()[indexPath.row]

    cell.locationLabel?.text = visit.getVenueName()
    cell.timeLabel?.text = visit.getVisitTime()
    cell.typeLabel?.text = visit.getVisitType()

    return cell
}

如果我像这样运行代码,它似乎崩溃了。也许它无法找到自定义单元格?

但是,如果我将以下内容添加到viewDidLoad()

tableView.register(VisitCell.self, forCellReuseIdentifier: "VisitCell")

在此阶段,它不会崩溃,但表格视图显示为空。

任何指针?谢谢!

1 个答案:

答案 0 :(得分:4)

viewDidLoad() - :

中注册你的笔尖细胞
override func viewDidLoad() {
        super.viewDidLoad()
        yourTableView.registerNib(UINib(nibName: "yourcell", bundle: nil), forCellReuseIdentifier: "CustomCellOne")
    }