如何正确实现具有固定数量的自定义单元格的表格视图?

时间:2016-12-13 11:16:28

标签: ios uitableview swift3

我有一个UITableView我只需要3个单元格。这就是我在IB中所拥有的:IB table view and cells。所有单元格都包含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")
}

未显示细胞内容。

处理这种情况的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

正如Sandeep Bhandari所说,如果你想保留静态细胞,那么在tableview中使用静态细胞:

UITableView with static cells

您可以在故事板本身中指定每个部分等中的行数,部分数和行数。