大小增加后,圆形button变成圆angular矩形

我在我的iOS应用程序中创build了一个圆形button,并且在更改了自动布局的宽度和高度约束(使button更大)之后,它现在是圆angular矩形而不是圆。

我有一个在Main.storyboard中定义的UIButton和在ViewController.swift中的IBOutlet …

@IBOutlet weak var button: UIButton! 

viewDidLoad()我在运行时更改.cornerRadius,使其成为一个圆…

 button.layer.cornerRadius = button.frame.size.width / 2.0 

这种方法对我的应用程序完美工作,直到我改变了UIButton的高度/宽度。 我很困惑,为什么button不再是一个圆圈。 有任何想法吗?

自动布局发生在viewDidLoad之后,所以您需要将您的调整移动到viewDidLayoutSubviews以便帧大小将被设置为正确的大小。