如何在 UITableView 单元格中创建自定尺寸网格?

Posted

技术标签:

【中文标题】如何在 UITableView 单元格中创建自定尺寸网格?【英文标题】:How to create a self sizing grid in a UITableView cell? 【发布时间】:2018-09-29 09:34:51 【问题描述】:

我正在尝试构建一个类似于此的 UITableView。有一些常规单元格,我希望一个单元格是这样的网格。应该正好有 20 列,并且单元格应该是方形的。所以他们需要有一个 UITableView 的宽度 / 20 的宽度和高度。包含所有这些项目的 UITableViewCell 的高度应该是这个的 5 倍。我该如何做到这一点?

【问题讨论】:

在 tableview 单元格中你尝试使用 stackview 吗? 你建议 5 个水平的 stackview 来保存项目,1 个垂直的 stackview 来保存 stackview? 是的,或者您可以放置​​集合视图 如何在collectionview中设置item的大小? @user3179249 实现UICollectionViewDelegateFlowLayout 方法collectionView(layout: sizeForItemAt:)。但如果您知道单元格的确切数量,UIStackView 会更容易 【参考方案1】:

如果您知道确切的列数和行数,这很容易实现,无需任何代码,使用情节提要。

使用嵌套的 5 x 4 UIStackViews,每个内部堆栈视图包含 20 个交替着色的 UIViews,所有堆栈视图分布平等填充,以及单个单元格的纵横比约束为 1:1…

等等……

当然,了解这种技术后,您可以轻松地在代码中创建相同的技术。

【讨论】:

以上是关于如何在 UITableView 单元格中创建自定尺寸网格?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 UITableview 中创建具有 n 行数的 UITextField

UITableView 在动态环境中创建静态单元格

如何从Storyboard中创建的静态UITableView中删除单元格

我将如何在 UITableView 中创建文本字段

在 UItableview 单元格中创建的 UIButton 在点击时崩溃

如何在表格单元格中创建UITextField成为第一响应者?