ios - 如何在 View 中垂直居中标签

标签 ios swift position uilabel

我在一个 View 中有 4 个这样的标签:

enter image description here

像这样的 View 层次结构:

enter image description here

但如果每个标签中的一个文本为空,则所有其他标签都应与图像垂直居中。

例如:albumDataLabel.text为空,则userNameLabelalbumNameLabelalbumLocationLabel应垂直居中与图像。

是这样的:

enter image description here

那么如何做到这一点,请指出一些方法。

最佳答案

  • 为每个标签设置高度限制,哪些标签没有文字 在运行时使其高度为零(通过将常量设置为 0 从高度约束的导出开始)。
  • 您的约束应该在线性层次结构中,例如第一个标签的顶部应该固定在它的晚餐 View 的顶部,最后一个标签的底部应该固定在父 View 的底部,每个标签的底部应该固定在下面标签的顶部。
  • 然后您应该为 view 设置高度约束,其中包含所有标签,其最小高度为常量 (>=)(您的 View 的最小高度)。
  • 并将该 View 与您的 ImageView 垂直居中。

你可以做这种设置!!

关于ios - 如何在 View 中垂直居中标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39264490/

相关文章:

ios - Firebase 未正确初始化

ios - 无法从 Swift 继承 NSInputStream(initWithData : unrecognizer selector)

swift - LaunchImage 和 TabBarViewController 之间显示的银色背景

ios - 如何使用新的字符串目录系统动态更改应用程序语言? [Xcode 15]

Javascript 位置变量无法正确更新

html - Position:不推送附近文字的相对图片?

objective-c - UILables、文本流和布局

swift - FCM : Message sent but not received

css - 对齐元素未按预期工作

ios - 有没有办法将 Observable.bind 和折叠之类的东西结合起来?