UITableViewCell内的UICollectionView —动态高度?

我们的应用程序屏幕之一要求我们将放置在的UICollectionView内部UITableViewCell。这UICollectionView将具有动态数量的项目,导致高度也必须动态计算。但是,我在尝试计算Embedded的高度时遇到了问题UICollectionView

我们的总体架构UIViewController是在情节提要中创建的,并且确实使用了自动布局。但是,我不知道如何UITableViewCell基于的高度动态增加的高度UICollectionView

谁能给一些技巧或建议,以实现这一目标?


大话西游666
浏览 881回答 3
3回答

肥皂起泡泡

我认为我的解决方案比@PabloRomeu提出的解决方案简单得多。步骤1.在UICollectionView到的UITableViewCell subclass位置创建插座UICollectionView。让我们来命名collectionView步骤2.添加IB来UICollectionView限制高度,并为它创建出口UITableViewCell subclass。让我们来命名为collectionViewHeight。步骤3.在tableView:cellForRowAtIndexPath:添加代码中:// deque a cellcell.frame = tableView.bounds;[cell layoutIfNeeded];[cell.collectionView reloadData];cell.collectionViewHeight.constant = cell.collectionView.collectionViewLayout.collectionViewContentSize.height;

慕虎7371278

表格视图和集合视图都是UIScrollView子类,因此当它们尝试计算内容大小,重用单元格等时,不希望被嵌入到另一个滚动视图中。我建议您出于所有目的仅使用集合视图。您可以将其划分为多个部分,然后将某些部分的布局“处理”为表视图,而将其他部分“收集”为集合视图。毕竟,使用集合视图无法实现的任何事情都无法通过表格视图实现。如果您的集合视图“零件”具有基本的网格布局,则还可以使用常规表单元格来处理它们。不过,如果您不需要iOS 5支持,则最好使用集合视图。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

iOS