Ios 如何将数据从uitableviewcontroller发送到uitableviewcell

Ios 如何将数据从uitableviewcontroller发送到uitableviewcell,ios,swift,uitableview,uicollectionview,delegates,Ios,Swift,Uitableview,Uicollectionview,Delegates,我有以下情况 TableViewController(ExploreViewController)具有自定义单元格-CategoryTableViewCell。每个单元格都有一个包含UICollectionViewCells的集合视图 我希望CategoryTableViewCell在显示集合视图单元格时与ExploreViewController联系,以确定需要显示哪些数据。数据取决于表视图单元格的索引路径行和集合视图单元格的索引 我如何使用代理来完成此任务?我不会那样做。我将把每个单元格需要

我有以下情况

TableViewController(ExploreViewController)具有自定义单元格-CategoryTableViewCell。每个单元格都有一个包含UICollectionViewCells的集合视图

我希望CategoryTableViewCell在显示集合视图单元格时与ExploreViewController联系,以确定需要显示哪些数据。数据取决于表视图单元格的索引路径行和集合视图单元格的索引


我如何使用代理来完成此任务?

我不会那样做。我将把每个单元格需要的数据作为表视图控制器的
cellForRow(at:)
方法中的模型对象传递给它。如果单元的数据发生更改,请向其传递新的模型对象。然后,单元格可以使用该模型数据从其子集合视图响应数据源调用

如果您决定使用委托模式或类似模式:

让我们将其称为数据源,而不是委托。设计一个CategoryTableViewCellDataSource协议。创建CategoryTableViewCell时,请将表视图控制器设置为其数据源

让单元格询问其数据源以显示数据。委托协议将使用单元格的位置来确定其索引路径,然后从模型中获取数据并返回。(您可以找到单元格内容视图的中点,将该点转换为表格视图的坐标系,然后使用表格视图的
indexPathForRow(at:)
方法计算索引路径