【发布时间】:2023-03-20 03:22:01
【问题描述】:
我希望 UILabel 在同一屏幕上的界面元素后面不断更新。通过使用 Swift Xcode 工具中的 Debug View Hierarchy 工具,我可以看到我的标签从其他元素下方开始。一旦我更新标签中的文本,它就会跳到顶部并覆盖我的其他标签和界面元素。
第一个问题...我在 Interface Builder 中找不到设置前后层的工具...如果有人可以向我指出那将是很棒的,Google 不是我的朋友。
因为当我更新标签时它最终会在顶部,我想我可以在刷新标签时将标签发送到后面...在我的 ViewController.swift 文件中,在我更新标签文本的函数中,我试过了:(我的标签的出口挂钩叫做“consoleMe”
super.sendSubview(toBack:consoleMe)
不...可能是倒退了?所以我尝试了:
consoleMe.sendSubview(toBack: super)
...以及“自我”而不是超级。它根本不喜欢超级。它抱怨 self 是 ViewController 而不是 UIView。
最后,我想知道我是否必须这样做——肯定有一种方法可以指定 UILabel 应该保持在其他东西之下吗?
我是否正确更新 UILabel 会自动将其置于最前面(或者发生了其他事情?)我试图让其他标签和项目“不透明”,但当然没有效果,因为它们最终低于我的控制台标签。
谢谢! -D
【问题讨论】:
标签: swift uilabel interface-builder