为了账号安全,请及时绑定邮箱和手机立即绑定

UITableViewCell内的UICollectionView —动态高度?

UITableViewCell内的UICollectionView —动态高度?

iOS
大话西游666 2019-11-22 11:16:25
我们的应用程序屏幕之一要求我们将放置在的UICollectionView内部UITableViewCell。这UICollectionView将具有动态数量的项目,导致高度也必须动态计算。但是,我在尝试计算Embedded的高度时遇到了问题UICollectionView。我们的总体架构UIViewController是在情节提要中创建的,并且确实使用了自动布局。但是,我不知道如何UITableViewCell基于的高度动态增加的高度UICollectionView。谁能给一些技巧或建议,以实现这一目标?
查看完整描述

3 回答

?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

我认为我的解决方案比@PabloRomeu提出的解决方案简单得多。


步骤1.在UICollectionView到的UITableViewCell subclass位置创建插座UICollectionView。让我们来命名collectionView


步骤2.添加IB来UICollectionView限制高度,并为它创建出口UITableViewCell subclass。让我们来命名为collectionViewHeight。


步骤3.在tableView:cellForRowAtIndexPath:添加代码中:


// deque a cell

cell.frame = tableView.bounds;

[cell layoutIfNeeded];

[cell.collectionView reloadData];

cell.collectionViewHeight.constant = cell.collectionView.collectionViewLayout.collectionViewContentSize.height;


查看完整回答
反对 回复 2019-11-22
?
慕虎7371278

TA贡献1802条经验 获得超4个赞

表格视图和集合视图都是UIScrollView子类,因此当它们尝试计算内容大小,重用单元格等时,不希望被嵌入到另一个滚动视图中。

我建议您出于所有目的仅使用集合视图。

您可以将其划分为多个部分,然后将某些部分的布局“处理”为表视图,而将其他部分“收集”为集合视图。毕竟,使用集合视图无法实现的任何事情都无法通过表格视图实现。

如果您的集合视图“零件”具有基本的网格布局,则还可以使用常规表单元格来处理它们。不过,如果您不需要iOS 5支持,则最好使用集合视图。


查看完整回答
反对 回复 2019-11-22
  • 3 回答
  • 0 关注
  • 880 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信