带有 2 个 UILabel 的 UIStackview 可以根据内容动态调整吗?

Posted

技术标签:

【中文标题】带有 2 个 UILabel 的 UIStackview 可以根据内容动态调整吗?【英文标题】:Can UIStackview with 2 UILabels dynamically adjust based on contents? 【发布时间】:2021-09-13 17:11:16 【问题描述】:

我有一个图像视图和 2 个标签,如下所示

两个标签都需要根据文本集动态调整。

我尝试在 UIStackView 中添加 UIImageView 和 2 个 UILabel 但标签显示不正确

关于如何实现它的任何建议?

谢谢

【问题讨论】:

你的意思是字体缩放吗? 如果是,设置堆栈高度约束 不,字体是固定的。不想修复stackview高度,希望它动态增长 我不明白这个问题,您希望标签如何以不同的方式显示? 检查堆栈视图分布属性 【参考方案1】:

您可以通过在“右侧标签”上设置 Content Hugging 和 Content Compression Resistance 轻松做到这一点:

这是它在 Storyboard 中的外观。我为元素设置了背景颜色,以便于查看框架:

堆栈视图属性是:

以下是右侧标签中不同文本的外观:

以及,清除背景颜色:

【讨论】:

以上是关于带有 2 个 UILabel 的 UIStackview 可以根据内容动态调整吗?的主要内容,如果未能解决你的问题,请参考以下文章

带有多行 UILabel 的 UIPickerView

带有 UIButton 的 UILabel

带有2行的UILabel,如何独立截断每一行?

带有两种不同颜色文本的 UILabel

在内部使用带有 UIWebView 的 url 方案来更改 UILabel

iOS UITextView 或 UILabel 带有可点击的动作链接[重复]