在视图控制器类中,我试图在10x10网格中以编程方式创建按钮。我有约束,视图正在调整大小,但我从print语句中看到的大小是故事板的原始大小而不是调整大小。我如何获得新尺寸?
func buttonGridder() {
for x in 0..<10 {
for y in 0..<10{
let sizer = ButtonGrid.frame.width
let buttonSize:CGFloat = ButtonGrid.frame.width / CGFloat(10)
print("\(x), \(y), \(buttonSize), \(sizer)")
let letterButton = WordButton(column: x, row: y, buttonSize: buttonSize, buttonMargin: 0)
self.ButtonGrid.addSubview(letterButton)
}
}
}
答案 0 :(得分:1)
使用此方法viewDidLayoutSubviews
调用Log函数。这是在视图根据viewDidAppear
之后的约束定位后调用的方法。注意:此方法在一次调用中被多次调用,因此请勿分配或添加此方法。
如果您稍后要添加或更改视图大小,请调用setNeedsDisplay
重绘View控制器内的所有视图