在 StackView 中按内容对齐两个元素

Posted

技术标签:

【中文标题】在 StackView 中按内容对齐两个元素【英文标题】:Align two elements by content in StackView 【发布时间】:2018-07-24 15:47:23 【问题描述】:

我在 StackView Horizo​​ntal 中有两个 UIView。在 UIView 中发布了 UILabel。我需要第一个优先。主要要求是在任何 UI 中完全没有固定宽度。 enter image description here

【问题讨论】:

你能重复一下这个问题吗?第一个标签有什么优先权?显示标签中的所有字符? 【参考方案1】:

将所需标签的setContentCompressionResistancePriority(_:for:) 设置得较高,而将另一个标签设置得较低。示例:

textLabel1.setContentCompressionResistancePriority(UILayoutPriorityDefaultHigh, forAxis: .Horizontal)
textLabel2.setContentCompressionResistancePriority(UILayoutPriorityDefaultLow, forAxis: .Horizontal)

【讨论】:

以上是关于在 StackView 中按内容对齐两个元素的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Jetpack Compose 中按基线对齐行元素

左对齐的水平堆栈视图和顶部对齐的垂直堆栈视图

水平 Stackview 左对齐项目

在水平堆栈视图 + 元素的全宽上注册 UITapGesture

指定stackview的arrangedSubviews之间的不同间距

在不停止 stackView 自动调整大小的情况下对齐图像视图