在 UIView 中看不到 UILabel,它在另一个标签后面

Posted

技术标签:

【中文标题】在 UIView 中看不到 UILabel,它在另一个标签后面【英文标题】:Can't see an UILabel in UIView, it's behind an other label 【发布时间】:2015-08-31 14:58:44 【问题描述】:

我刚刚在 Interface Builder 中的 UIView 中添加了一个名为 label1UILabel,我想把它放在另一个名为 label2UILabel 后面。

label2label1 后面,我不知道如何更改顺序。

我想要的是,如果 label2 被隐藏,label1 将在其后面可见。

【问题讨论】:

你使用storyboard还是nib? 我使用 main.storyboard ;) 【参考方案1】:

如何在 Swift 中在另一个视图下方添加一个视图:

insertSubview(label1, belowSubview: label2)

如何在 Interface Builder (main.storyboard) 中更改视图堆叠:

只需将您的 label1 视图拖到文档大纲中的 label2 上方(IB 上的左侧面板)

如果您的文档大纲未打开,请在界面生成器中单击此按钮

元素的堆叠顺序是从上到下读取的,不像 Photoshop 或类似程序,列表的底部是底层。在文档大纲中,您可以将其视为相反的顺序。列表顶部的项目位于显示视图的底部。

【讨论】:

是的,我知道它就像 Photoshop 和其他使用图层的软件,但我关闭了文档大纲并且没有考虑。谢谢!【参考方案2】:

您有很多方法可以更改标签位置。以下代码应该可以工作:

label = CGRectMake(xCoordinate, yCoordinate, width, height);

【讨论】:

以上是关于在 UIView 中看不到 UILabel,它在另一个标签后面的主要内容,如果未能解决你的问题,请参考以下文章

当其他元素太宽时,在水平 UIStackview 中看不到标签

UIView 中的自动布局 UILabel

iOS:根据 View 位置动态改变 UILabel Alignment

iOS UI 测试看不到 UILabel

为啥这个自定义 UIView 代码不显示 UILabel 的?

为啥我的 UIView 的 UILabel 子视图不显示?