ios - 水平堆栈 View 内的标签宽度相等?

标签 ios swift uilabel uistackview

我有一个具有这些属性的堆栈 View : 轴:垂直 对齐方式:填充 分布:填充

我将其他水平堆栈 View 添加到具有以下属性的垂直堆栈 View : 轴:水平 对齐方式:FirstBaseline 分布:填充

这些水平堆栈 View 中的每一个都包含两个标签。我希望标签根据其中的文本缩小/扩大宽度。每当我将它们的 numberOfLines 设置为 0 时,两个标签的宽度相等,并且高度会增加,如果我将 numberOfLines 设置为 1,它们会根据文本扩大/缩小宽度,但如果文本需要多于一行,其余文本不会出现。非常感谢任何帮助。

最佳答案

我有一个类似的问题,水平堆栈 View 中有两个标签。 numberOfLines = 1 的 label1 和 label2 是多行的。 (numberOfLines = 0) 即使标签 2 的文本更长,两个标签的宽度也相等!

为了解决这个问题,我必须为 label1 设置一个宽度约束(基于其当前内容),优先级 = 750(高但不是必需的)。
这样,如果标签有一个长文本并且其宽度增长大于该约束,则标签宽度 = 其内容大小。
如果标签宽度小于约束,则标签宽度 = 约束。

See screen shot

关于ios - 水平堆栈 View 内的标签宽度相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48080148/

相关文章:

iphone - 为什么保留计数为负值?

ios - 向数组添加值时并发执行 UnsafeMutablePointer.deinitialize 错误

ios - 准备 segue : Cannot convert value of type 'UIViewController' to specified type 'SecondViewController'

ios - 具有关系的核心数据模型

ios - 具有相同参数类型的 Swift 初始化器

ios - 当 UILabel 动态调整大小时,移动 UIView 中的 UIButton。 iOS系统

android - 移动应用 ionic 在 SSL 证书过期后停止工作并已更改

ios - 将 iOS 应用程序连接到亚马逊上托管的 Ejabberd 服务器

ios - 同一标签中的不同字体大小?

iphone - 减小第三行的 UIButton 标签字体大小