ios - 如何使用自动布局更改标签位置

标签 ios autolayout storyboard uilabel

我有两个并排的标签“标签 1”和“标签 2”。如果“标签 1”内容不可用,则“标签 2”替换“标签 1”位置。有谁知道如何使用自动布局? enter image description here

为了尝试,我为两个标签设置了固定的高度和重量。 “标签 1”具有前导和前 8 个像素边距,而“标签 2”具有前导 0 像素和前 8 像素。将“标签 1”大小设置为“0”,隐藏“标签 1”,但它不起作用。

最佳答案

根据您的要求(从尺寸检查器)移除标签的宽度约束并更新(设置)标签的压缩/拥抱优先级。

通过删除宽度约束,您的问题将得到解决,但 autoLayout 可能会显示内容显示优先级冲突,因为您的两个标签水平放置在同一行(点)中。要解决此冲突,您需要更新两个标签中任何一个的压缩/拥抱优先级。

现在,当任何一个(或两个)标签文本没有值时,为其设置 nil 值,这样它的框架(空间)将自动被其他标签占用。如果两个标签文本都为 nil 值,那么它们都将消失(自动将它们的宽度设置为零)。

enter image description here

关于ios - 如何使用自动布局更改标签位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42927641/

相关文章:

ios - 使用 Storyboard和导航 Controller 检测 MPMoviePlayerController 上的点击

iphone - 如何将 ViewController 添加到 UIPageViewController

ios - iOS 多任务进入后台时线程的行为

android - Selenium 能否帮助我在 Android、iOS、OSX 和 Windows 上实现客户端自动化? OSX 和 Windows 是独立的应用程序

ios - 自动布局等间距和加权间距

IOS 8 自动高度单元工作但当我向上滚动时它跳

ios - 如何呈现 View Controller 并忽略所有其他 Controller ?

ios - 删除 tableView 行

iOS 在 afnetworking 2.0 成功和失败 block 中设置属性时出现问题

ios - 在 Interface Builder 中更新后,UI 未在设备上更新