Ios 从url下载数据时,重新加载uitableviewcell内的集合视图
所以我在表视图单元格中有一个集合视图,没有下载url中的表视图类数据,假设图像已下载,然后我需要在这些集合视图单元格中显示这些图像,因此,我正在做的是重新加载表视图,但集合视图没有重新加载,我需要用下载的数据重新加载这些视图确实很容易(假设您的viewController、customTableViewCell和customCollectionViewCell工作正常),在需要在表视图单元格内重新加载CollectionView时,在声明表视图的控制器中使用以下代码: //在ViewController中Ios 从url下载数据时,重新加载uitableviewcell内的集合视图,ios,swift,uitableview,uicollectionview,Ios,Swift,Uitableview,Uicollectionview,所以我在表视图单元格中有一个集合视图,没有下载url中的表视图类数据,假设图像已下载,然后我需要在这些集合视图单元格中显示这些图像,因此,我正在做的是重新加载表视图,但集合视图没有重新加载,我需要用下载的数据重新加载这些视图确实很容易(假设您的viewController、customTableViewCell和customCollectionViewCell工作正常),在需要在表视图单元格内重新加载CollectionView时,在声明表视图的控制器中使用以下代码: //在ViewContro
var myRow = 0 // set the index path row of your tableview cell
var mySection = 0 // and the index path section
DispatchQueue.main.async(execute: {
if let index = IndexPath(row: myRow, section: mySection) as? IndexPath {
if let cell = self.MyTableView.dequeueReusableCell(withIdentifier: "cell", for: index) as? MyCustomTableViewCell {
cell.collectionReloadData()
}
}
})
现在在TableViewCell中
class MyCustomTableViewCell: UITableViewCell, UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout {
@IBOutlet weak var collectionView: UICollectionView!
func collectionReloadData(){
DispatchQueue.main.async(execute: {
self.collectionView.reloadData()
})
}
//Dont forget to set delegates
override func awakeFromNib() {
super.awakeFromNib()
self.collectionView.delegate = self
self.collectionView.dataSource = self
}
}
这里有一个代码示例,第3节“Cartas Recomendadas”中的集合视图被重新加载:
为什么不从url在图像视图上使用后台加载?像sd_webimage library?是的,我会这样做,但首先我需要获取图像的URL列表。一旦获取了该列表,我想将其发送到单元格并在那里重新加载集合视图,我已经在那里设置了一个出口,但当我尝试在iTunes中重新加载数据时,它为零。如果可能,使用延迟加载从tableview单元格的子视图获取集合视图。尝试重新加载该集合视图,它将正常工作。