需要在tableviewCell中使用Collectionview,并在swift中使用collectionviewcell的动态高度

时间:2016-10-03 11:10:40

标签: ios swift uitableview uicollectionview

虽然我发现这里有很多问题与这个问题有关,但仍然无法得到我想要的东西。

我的问题与this question asked by @Rui非常相似, 我想要一个类似于Zomato的布局

让我在这个例子的帮助下解释所有:

1)我使用tableview作为superContainerView,这样我就可以放置任意数量的块,例如" Pocket-friendly delivery"。

2)然后我在一个tableviewcell中使用了Collectionview,使其内部视图是动态的,可以是3或6或9。

3)在CollectionViewCell内部我设计了自定义视图,其中包含一组图像和标签(即Cafe Green Apple,如View),如下所示。

4)我已将tableview以及collectionview委托和数据源分配给同一个UIViewController。

5)一切正常工作但是当我为numberOfItemsInCollectionView指定6时,collectionView的大小保持不变并且它开始滚动,这是我不想要的。

我希望所有6个都可见而不需要滚动

enter image description here

请有人帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

为单元格内的集合视图添加高度约束,并根据图像数量计算集合视图的高度,假设图像大小不变。设置集合视图高度约束。在表视图的tableView cellForRowAtIndexPath方法中执行所有这些操作。对于您的tableview,您仍然可以使用UITableViewAutomaticDimension