ios - 自动布局 - 将一个 UILabel 的原点替换为另一个

标签 ios autolayout uilabel

我有两个 UILabel。一个 UILabel 位于另一个之上。我想要的是,如果top one没有内容,bottom 应该取top的原点。
我必须在屏幕上使用自动布局。我尝试使用 sizeToFit 但这不起作用。如果顶部 UILabel 中没有内容,则底部 UILabel 仍停留在原点。

最佳答案

设置高度约束将不起作用。第二个标签的 y 位置将无法获得正确的 Y 轴值(它将向上移动)。我通过在两个结果之间使用垂直间距约束解决您的问题

解释:- 设置标签的正常基本约束加上垂直间距约束。当上标签没有文本时,更新垂直间距约束如下:-

verticalSpacingConstraintBetweenLabels.constant = -(KIntialVerticalSpacing + (KHeightOfLabel-KIntialVerticalSpacing));

enter image description here

我为您创建了一个示例项目源代码可在以下位置获得:- https://www.dropbox.com/s/eq9hinnw4sdfltq/LabelSpacing.zip?dl=0

关于ios - 自动布局 - 将一个 UILabel 的原点替换为另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32963950/

相关文章:

ios - watchOS 通知可以显示自定义嵌入字体吗

ios - 应用程序在模拟器中挂起

ios - UITableHeaderView autoLayout 中的 UILabel 不适用于 iPhone 6

ios - 尝试在 Swift 中将 UILabel 居中

iphone - iOS 5 中 UILabel 的多色

界面生成器中的 iOS 多行标签

iphone - 如何自定义 iOS 警报 View ?

ios - 如何在 Swift 中通过参数比较来美化枚举?

ios - 使用自动布局时,旋转一圈后我没有得到正确的响应

ios - 如何使用自动布局将内容按屏幕尺寸的百分比 IOS