我目前有一个logo水平位于故事板中央,垂直位置距故事板顶部50像素,它的设置宽度为377,设置高度为200。我试图使用绑定到徽标的IBOutlet以编程方式设置另一个元素的边界,但是返回的边界不是正确的值,至少从我在故事板中设置的。
我期望从logo.frame返回的值类似于
x = 100, y = 50, width = 377, height = 200
,但实际值是
x = 0, y = 0, width = 240, height = 128
是因为logo有动态定位吗?当它们在屏幕上呈现时,我可以使用不同的对象来获取值吗?
您是否尝试在布局更改后获取位置,例如在viewDidAppear()中?
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
let width = logo.frame.width
}