我正在隐藏在collectionView中完成的行。
我需要在cell.hidden = isCellHidden
中致电cellForItemAtIndexPath
。
在我隐藏10行之后,剩下大量的空白空间,我想减少collectionView的大小以仅适合未隐藏的行。
collectionView的设计有点像tableView。 我知道使用tableView我必须做的就是设置:
func section1VisibilityButton(sender: UIButton){
isCellHidden = !isCellHidden
self.tableView.reloadData()
self.tableView.contentSize.height = CGFloat(500)
}
使用collectionView,当我尝试这个时它会正确调整大小但是当我尝试向下滚动时它会将自身调整回原始高度,包括隐藏的单元格(单元格层仍然隐藏但是有大量的空白空间最后一个可见的行,好像它们是可见的一样)
答案 0 :(得分:0)
对于您的问题,有两个选项可以更改collectionView / tableView的框架。
如果您使用自动布局,则需要创建IBOutlet of bottom constraint
的{{1}}或IBOutlet of constant height constraint
(这些约束中的任何一个,你是使用)。
在tableView
数据后,您需要通过计算reload tableView
来更新约束。
假设您使用 height
,并且您计算的constant height constraint
为height
(例如,每行3行和50个高度)。
150