【发布时间】:2015-05-26 06:48:33
【问题描述】:
如果有人可以在这里提出一些想法,我将不胜感激。几周以来我一直在努力解决这个问题(不是开玩笑)。
我有一个使用 collectionView 的“待办事项列表”,我在其中隐藏已完成的行并将它们移动到列表的末尾。然后,如果需要,我可以使用按钮取消隐藏项目。 collectionView 看起来与 tableView 完全一样,每行一个项目(单元格)。
当项目被隐藏时,collectionView 在底部有很多空的滚动空间,而不是自动删除隐藏行使用的空间,因为它们在技术上仍然存在。
我正在尝试削减该空白空间,以便 collectionView 高度等于可见的单元格/行数。
override func viewDidAppear(animated: Bool) {
if isCellHidden { //checking if cells are hidden
var heightOfSection0 = 95 + (42 * self.collectionView.numberOfItemsInSection(0))
println(self.collectionView.contentSize.heigh) //returns 2350
self.collectionView.contentSize.height = CGFloat(heightOfSection0)
println(heightOfSection0) //returns 1019
println(self.collectionView.contentSize.heigh) //returns 1019.0 which is correct but as soon as I scroll down it resets to it's original size (2350) and let's me scroll through that empty space...
}}
如果我在设置后立即尝试读取 collectionView 高度,它会显示正确的值,但一旦我尝试向下滚动,它就会重置回原来的高度。我也试过禁用自动布局,它没有任何区别
【问题讨论】:
-
尝试在
sizeForItemAtIndexPath中调整大小
标签: ios swift uicollectionview