我遵循了Ash Furrows教程collectionView inside tableView
我有TableItem类,它有一个name属性和一个URL数组。我有一个tableView,里面有collectionView。
我垂直填充我的tableview,其中有任意数量的TableItem可用,并且我使用TableItem类中的数组内的大量url水平填充我的collectionView。
我不关心按表格单元格然后获取信息,我希望数据在两个集合中同时显示。
如何拉取TableItem数据并在tableView的同时将其显示在collectionView中?
class TableItem{
var name: String?
var urlsForCollection: [URl] = []
}
var tableItems = [TableItem]()
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return tableItems.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "TableCell", for: indexPath) as! TableCell
cell.textLabel.text = tableItems[indexPath.row].name
return cell
}
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
//how do I return the urlsForCollection.count from each TableItem in tableItems
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "CollectionCell", for: indexPath) as! CollectionCell
//how can I access the urlsForCollection for each TableItem in tableItems
for url in urlsForCollection{
imageView.sd_setImage(with: url!)
}
return cell
}
答案 0 :(得分:0)
像这样:
let tableItem = tableItems[indexPath.row] as! TableItem
for url in tableItem.urlsForCollection{
imageView.sd_setImage(with: url!)
}
应该工作。