我有一个UITableView
我只需要3个单元格。这就是我在IB中所拥有的:。所有单元格都包含UITextField
,这就是使用自定义单元格的原因。每个单元格绑定到CustomCell
类,相应的UITextField
作为出口。我也有协议将UItexField
中的文本传递到表UIViewController
。
在UIViewController
我有这个:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
var cell = UITableViewCell()
switch indexPath.row {
case 0:
cell = tableView.dequeueReusableCell(withIdentifier: "firstNameCell", for: indexPath)
(cell as! FirstNameTableViewCell).delegate = self
case 1:
cell = tableView.dequeueReusableCell(withIdentifier: "lastNameCell", for: indexPath)
(cell as! LastNameTableViewCell).delegate = self
case 2:
cell = tableView.dequeueReusableCell(withIdentifier: "birthdateCell", for: indexPath)
(cell as! BirthdateTableViewCell).delegate = self
default:
break
}
return cell
}
但是在这里:
override func viewDidLoad() {
super.viewDidLoad()
tableView.register(FirstNameTableViewCell.self, forCellReuseIdentifier: "firstNameCell")
tableView.register(LastNameTableViewCell.self, forCellReuseIdentifier: "lastNameCell")
tableView.register(BirthdateTableViewCell.self, forCellReuseIdentifier: "birthdateCell")
}
未显示细胞内容。
处理这种情况的正确方法是什么?