我目前在故事板上水平居中有一个徽标,垂直位于故事板顶部50个像素处,它的设置宽度为377,设置高度为200.我试图为另一个设置边界元素以编程方式使用绑定到徽标的IBOutlet,但返回的边界不是正确的值,至少从我在故事板中设置的值。
我希望logo.frame返回的值类似于
x = 100, y = 50, width = 377, height = 200
但实际值是
x = 0, y = 0, width = 240, height = 128
这是因为徽标具有动态定位吗?是否有一个不同的对象可以用来获取屏幕上呈现的值?
答案 0 :(得分:2)
Have you tried to fetch the position after the layout has been changed, for example in viewDidAppear() ?
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
let width = logo.frame.width
}