Ios 以编程方式提供多种UITableViewCell类型

Ios 以编程方式提供多种UITableViewCell类型,ios,uitableview,Ios,Uitableview,我正在用Swift 4编程编写一个应用程序 我想创建一个包含UITableView的设置页面,但是其中的行将包含不同类型的内容 例如,我想要一个有滑块的行,一个有uiswitch的行,一个包含文本输入的行,等等 我想实现这一点的方法是为我想使用的每种类型的单元格创建一个自定义单元格类 但是,目前我创建的单元格如下所示: override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) ->

我正在用Swift 4编程编写一个应用程序

我想创建一个包含UITableView的设置页面,但是其中的行将包含不同类型的内容

例如,我想要一个有滑块的行,一个有uiswitch的行,一个包含文本输入的行,等等

我想实现这一点的方法是为我想使用的每种类型的单元格创建一个自定义单元格类

但是,目前我创建的单元格如下所示:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: cellID, for: indexPath) as! CustomCell
    cell.rowContent.text = items[indexPath.row]
    cell.tableViewController = self
    return cell
}

我怎样才能根据我手机的内容来下载它呢?

如果我建议你这样做的话,看起来你正在尝试制作一个表单

否则,您需要注册单元格,然后根据索引或您想要的任何其他因素将所选单元格出列:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    switch indexPath.section{
    case 1:
         let cell = tableView.dequeueReusableCell(withIdentifier: cellID, for: indexPath) as! CustomCell
    cell.rowContent.text = items[indexPath.row]
    cell.tableViewController = self
    return cell 
    case 2:
    let cell = tableView.dequeueReusableCell(withIdentifier: secondCustomcellID, for: indexPath) as! AnotherCustomCell
    cell.rowContent.text = items[indexPath.row]
    cell.tableViewController = self
    return cell
    }

}

对于设置表视图,请使用静态单元格和IBOutlets,并忽略数据源。您应该从模型中了解每行的单元格类型,并根据该信息创建,例如,切换。。。案例在使用模型填充出列单元之前,分支以向下转换出列单元的正确类型。