UITableView中的UICollectionView。如何在集合视图变高时告诉tableview单元格改变高度?

时间:2015-03-23 16:36:54

标签: ios uitableview autolayout uicollectionview

我有UITableView,其中一个表格单元格是UICollectionViewController子类,其中包含UICollectionView显示的电子邮件地址。当用户添加电子邮件UICollectionView时,表格视图中的单元格应该更高。

我目前正在尝试在我的集合控制器/单元类的collectionView方法中将collectionView.contentSize.height高度约束设置为LayoutSubviews。我的问题是UITableView中的单元格在发生这种情况时不会改变大小。

我假设这是因为没有告诉表视图电子邮件条目单元格的高度已经改变。我目前正在使用动态细胞大小 - 或者尝试无论如何。即便如此,如果我致电tableView.reloadData(),这仍然无效。我想知道是否有人可以给我一个如何设置它的高层次想法。

更新:

我有一个破坏的约束问题,这是我的问题的一部分,但这仍然没有解决。虽然已经证明我可以更新高度约束并且会更新集合视图的大小,但它不同步。它始终是一个更新。这是一个以绿色显示“UICollectionView”的图像,您可以在日志中看到我每次在向集合添加新项目后更新约束(是,多次),但它没有更新边界查看实例。在这个例子中,如果我要向集合中添加一个新项目,那么下次我检查bounds.height时它将是149.5。我错过了什么!?

enter image description here

2 个答案:

答案 0 :(得分:0)

我在tableview单元格中的另一个tableview中回答了这个问题,这也适用于集合视图,我解释了它in this thread

问我是否遇到任何问题

答案 1 :(得分:-2)

您似乎想要动态设置表格视图单元格的高度。这个详细的教程将指导您创建一个具有动态高度的自定义单元类。不幸的是,本教程仅指导您如何使用自动布局约束和故事板来完成此操作。在本教程中,您将注意到单元格的高度取决于单元格中标题标签上的约束。尝试做同样的事情,但对单元格中的内容应用约束(集合视图单元格)。 http://www.raywenderlich.com/73602/dynamic-table-view-cell-height-auto-layout