【发布时间】:2016-11-20 04:49:44
【问题描述】:
我已使用本教程将 collectionView 放入 UITableView。 https://ashfurrow.com/blog/putting-a-uicollectionview-in-a-uitableviewcell-in-swift/
UITableViewController 是 UITableView 和每个单元格中不同集合视图的数据源和委托。 问题是我想动态隐藏 CollectionView 并在 collectionview 为空时将其高度更改为 0。 为此,我在 CellForRowAtIndexPath 中有此代码
if (patients.paraclinicImage.count == 0){
[cell.collectionView setHidden:true];
cell.collectionViewHeight.constant = 0;
} else {
[cell.collectionView setHidden:false];
cell.collectionViewHeight.constant = 80;
}
通过使用此代码,collectionView 最初会正确显示。但是,当快速滚动时,有时我会以正确的单元格高度加载单元格,但是集合视图将为空。刷新单元格可解决此问题。删除上面的代码行也解决了这个问题。
这里有两张图片显示了单元格在第一次渲染和多次滚动(以及重新渲染单元格)后的外观。
滚动前的问题如下图所示
但滚动后问题似乎如下一个
调试视图层次结构显示具有适当单元格高度的空 collectionView
【问题讨论】:
-
您是否可以发布
UICollectionViewdataSource 和委托的代码?我认为您的问题可以通过刷新集合视图来解决,而不必重新加载UITableViewCell -
你解决了这个问题吗,如果解决了,请告诉我们解决方案是什么,因为我面临着完全相同的问题
标签: ios objective-c iphone uitableview uicollectionview