gpt4 book ai didi

swift - 在 Swift 中向前和向后发送标签...我必须这样做吗?

转载 作者:行者123 更新时间:2023-11-30 12:09:56 26 4
gpt4 key购买 nike

我希望 UILabel 能够不断更新同一屏幕上的界面元素后面。通过使用 Swift 的 Xcode 工具中的调试 View 层次结构工具,我可以看到我的标签从其他元素下方开始。一旦我更新标签中的文本,它就会跳到顶部并覆盖我的其他标签和界面元素。

First Image 3D Debugger Image

第一个问题...我找不到在 Interface Builder 中设置前后层的工具...如果有人能向我指出这一点那就太好了,Google 不是我的 friend 。

因为当我更新标签时它最终会出现在顶部,所以我想每当刷新标签时我都可以将标签发送到后面...在我的 ViewController.swift 文件中,在我更新标签文本的函数中,我已经尝试过:(我的标签的 socket Hook 称为“consoleMe”

super.sendSubview(toBack:consoleMe)

不……这也许是倒退的?所以我尝试了:

consoleMe.sendSubview(toBack: super)

...以及“self”而不是 super。它根本不喜欢 super 。它提示 self 是 ViewController 而不是 UIView。

最后,我想知道我是否必须这样做 - 当然有一种方法可以指定 UILabel 应该保留在其他东西下面?

我是否正确,更新 UILabel 自动将其带到前面(或者发生了其他事情?)我尝试使其他标签和项目“不透明”,但当然这没有任何效果,因为它们最终位于我的下方控制台标签。

谢谢!-D

最佳答案

sendSubview(toBack:)UIView 的一种方法,所有 UIViewController 对象都包含内置的 view .

来自UIViewController文档:

View Management

Each view controller manages a view hierarchy, the root view of which is stored in the view property of this class.

因此,请改为在 view 属性上调用 sendSubview(toBack:):

view.sendSubview(toBack: consoleMe)

关于swift - 在 Swift 中向前和向后发送标签...我必须这样做吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46205104/

26 4 0