Swift 4-将数据传递给嵌入在Collection View单元格中的TableView

时间:2019-02-14 21:24:46

标签: swift xcode uitableview uicollectionview

我正在迅速创建一个天气应用程序。有一个主视图控制器,并且在控制器内,有一个带有两个单元格的集合视图。每个单元格中都有一个表格视图。

在视图控制器中,有一个网络调用,并且数组中填充了数据。目的是将这些数据传递到每个tableview单元格中以进行显示

我已经创建了一个图表来显示如何设置集合视图和表视图。

Diagram

如果有办法做到,那么任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

填充UITableViewCell的方法是覆盖cellForRowAt:方法。

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

但是,必须首先将数据传递到UICollectionViewCell。同样,这也可以通过重写cellForItemAt:方法来实现。

func collectionView(_ collectionView: UICollectionView, 
      cellForItemAt indexPath: IndexPath) -> UICollectionViewCell

因此,您可以子类 UICollectionViewCell并声明一个自定义成员变量来存储数据。另外,使子类符合UITableViewDataSource的协议,以便您必须重写UITableViewDataSource的{​​{1}}方法。从那里,您还可以参考cellForRowAt:另一个子类,该子类还将具有一个自定义成员变量,用于存储数据。最后,针对如何显示数据自定义UITableViewCell子类。