我有一个 UIComponent,它是一个简单的 View (我缩小了问题范围)。 这是 xib 和类:
然后我把这个组件放在 Storyboard的一个 View 中,设置它的约束:
所以通常情况下,红色矩形的宽度值会根据设备宽度而有所不同。
图形上就是这种情况,组件会正确调整自身大小,但是当我调用函数打印其宽度时,无论启动应用程序的设备如何,结果始终相同。
实际上,该值始终是 Storyboard中组件的实际宽度。
这太奇怪了。 有没有办法知道 UIComponent 的实际宽度?
帮助将不胜感激:)
最佳答案
在设置约束之后但在尝试获取其宽度之前,您应该在 View 上使用 layoutIfNeeded()。激活时未立即应用约束
(抱歉有 2 个答案 ^^ 它们太不同了)
关于ios - 如何在运行时知道 UIComponent 的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41574380/