如何创建水平动态 UICollectionView 单元格?迅速

2023-11-29

嘿,我正在尝试使用集合视图单元在视图控制器中显示一组“标签”,但我无法找到一种方法使它们能够根据字符串的长度动态调整大小。

现在,各个单元格的大小都是静态的,因此每当用超出单元格大小的字符填充单元格的字符串时,它就会进入第二行。我希望单元格可以根据字符串的长度改变长度。因此,如果它是标签“#Vegan”,它会自动调整大小,使标签不会那么大。同样,如果它是一个较长的字符串,例如“#LaptopFriendly”,它将在水平方向上变长以容纳该字符串,并且不使用第二行。垂直长度可以保持固定。谢谢你!

enter image description here

更新(当我使用 Rob 的代码遇到错误时界面生成器设置):

enter image description here

Simulator screenshot: enter image description here


您需要标签和单元格之间有明确的约束(例如前导、尾随、顶部和底部约束):

enter image description here

然后你可以使用UICollectionViewFlowLayoutAutomaticSize为了itemSize你的collectionViewLayout。别忘了设置estimatedItemSize,也可以自动调整单元格大小:

override func viewDidLoad() {
    super.viewDidLoad()

    let layout = collectionView?.collectionViewLayout as! UICollectionViewFlowLayout
    layout.itemSize = UICollectionViewFlowLayoutAutomaticSize
    layout.estimatedItemSize = CGSize(width: 100, height: 40)
}

得出:

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建水平动态 UICollectionView 单元格?迅速 的相关文章

随机推荐

  • 在 Spring MVC 应用程序中实现 Swagger 的“简单”方法

    我有一个用简单的 Spring 编写的 ReSTFul API 没有 Spring Boot 没有花哨的东西 我需要在其中实现 Swagger 到目前为止 互联网上的每个页面都让我抓狂 因为令人困惑的配置和臃肿的代码我根本找不到可移植性 有
  • ios13 防止下拉滚动到顶部的 tableView 来消除表单样式模态呈现的 viewController [重复]

    这个问题在这里已经有答案了 我有一个 tableViewController 它以默认的工作表样式呈现方式呈现 我想保留这种模式风格 因为它看起来不错并且在我的应用程序中运行良好 我喜欢下拉导航栏时的关闭 然而 我不想要的是下拉 table
  • 在snakemake规则的日志部分中定义的文件与在输出部分中定义的文件有很大不同吗?

    我认为的文档log蛇形规则的一部分 必须 手动 将内容发送到日志文件 在我看来 使用中定义的文件可以获得相同的结果output部分 这两种可能的方法之间的重要区别是什么 其真正的用处是什么log部分 对我来说 日志的最佳实践是 Snakem
  • 找到修剪周围空白的 svg viewbox

    假设我有一个绘制一些路径的 svg 我应该使用什么工具来找到一个完全适合这些路径的视图框 以便修剪周围的所有冗余空间 您只需将 svg 的 viewBox 设置为其边界框即可 function setViewbox svg var bB s
  • 如何设置像表格一样的选择选项样式?

    我有一个表单选择下拉菜单 我想格式化选项的内部文本 每个选项都有月份 年份和标题 我希望每个人都能相互协调 我尝试在选项元素内放置一个表格 看看是否可以强制它 但失败了 我尝试使用不间断空格 但也失败了 我相信是因为字母的字体系列样式 这是
  • Dockerfile 中的 VOLUME 是否在 kubernetes 中持久存在

    一些 Dockerfile 有一个VOLUME命令 当此类容器部署在 Kubernetes 中 但没有提供 kubernetes 卷 没有持久卷 PV 或持久卷声明 PVC 时 会发生什么情况 文件存储在哪里 音量是否持续 例如 Docke
  • (Java) Runtime.exec 中的文件重定向(双向)?

    我想执行这个命令 ceplinux work3 myName opt myCompany ourProduct bin EXECUTE THIS p cepamd64linux myCompany com 19021 ws1 project
  • 如何在开源 IDE (codelite) 中迁移到 C++ 11 [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我在Ubuntu QQ上使用CodeLite 5 1 默认情况下 根据之前安装的QQ等工
  • javascript 中数字数组的迭代返回字符串

    Why for i in 1 2 3 console log typeof i i 给出这个 Log string 0 Log string 1 Log string 2 我已经预料到了数字 Safari 7 0 9537 71 Mac O
  • Android:如何将页脚添加到全屏滚动视图?

    我希望页脚锚定在屏幕底部当且仅当它可以锚定在那里而不与任何其他视图重叠时 问题是我不知道有多少视图将添加到页眉或页脚 如果将页脚放在窗口底部会使其重叠 我想将页脚放在滚动视图的底部 也许可以将它添加到RelativeLayout中 并遵循它
  • 访问财产“文档”的权限被拒绝[重复]

    这个问题在这里已经有答案了 我在那里使用以下脚本 在我的页面上形成此脚本添加 iframe 我想获取 iframe html 问题是 iframe 中有内部 iframe Javascript 以下函数用于获取 iframe 的内容 doc
  • 在Python中使用运算符进行加法

    考虑 operator add a b 我无法理解这是做什么的 运算符类似于 那么什么是operator add a b 你会如何在程序中使用它 运算符功能让您可以选择操作动态地 他们和操作员做同样的事情 所以operator add a
  • Springboot swagger 与 JsonView

    可以将 swagger 与 JsonView 我有一个我使用的模型 JsonView只返回几个字段 但是swagger ui显示孔模型 这是我的模型 public class Intimacao extends EntityBase Emb
  • 使用 CSS/Javascript 将文本字段中的文本更改为点

    有没有一种方法可以 屏蔽 文本字段的输入 使其像密码字段一样 显示点而不是文本 而无需将文本框设置为密码类型 与 JavaScript 相比 我们更喜欢 CSS 有任何想法吗 这可能是您正在寻找的答案 webkit text securit
  • 操作系统时区更改tomcat需要重新启动

    我的 Web 应用程序在 Apache Tomcat 7 0 上运行 我们调用 java util calendar 来获取服务器日期时间 问题是 如果系统时区发生更改 java 日历将继续以 旧 时区的日期时间运行 Tomcat使用的JD
  • PHP 缓存控制似乎不起作用

    请看一下我的网站 vynora 事情还没有完成 我在 HTML 页面的顶部放置了一个 PHP 标头 当我访问 Google 的 pagespeed 时 它告诉我应该优化浏览器缓存 请看一下 谷歌页面速度 但我已经使用 PHP 做到了 那么这
  • MySQL 导出到 outfile:CSV 转义字符

    我有一个带有一些常见字段的时间表数据库表 id client id project id task id description time date 还有更多 但这就是要点 我连夜将该表导出到 CSV 文件 以便为用户提供数据备份 它还可用
  • ggplot2 中的自动非等距中断

    我创建了一个简单的散点图ggplot2并用颜色可视化 z 变量 require ggplot2 data data frame x runif 1000 y runif 1000 vis rf 1000 df1 1 df2 3 qplot
  • 如何突出显示当前页面的菜单链接?

    这是一个非常常见的问题 但我找不到针对我的情况的任何解决方案 我正在制作一个相当大的网站 有数百个页面 因此我创建了每个页面都相同的页眉页和页脚页 现在我想突出显示当前页面的菜单按钮 但我的菜单位于我在每个页面中包含的标题中所以我尝试的一切
  • 如何创建水平动态 UICollectionView 单元格?迅速

    嘿 我正在尝试使用集合视图单元在视图控制器中显示一组 标签 但我无法找到一种方法使它们能够根据字符串的长度动态调整大小 现在 各个单元格的大小都是静态的 因此每当用超出单元格大小的字符填充单元格的字符串时 它就会进入第二行 我希望单元格可以