高分辨率屏幕上的UIButton角半径

时间:2015-11-06 17:40:45

标签: ios iphone swift ipad swift2

我试图在Swift中创建一个圆形的UIButton。 按钮的宽度和高度为112px,下面的代码适用于最多4英寸屏幕的设备。

button.layer.masksToBounds = false;
button.layer.cornerRadius = button.bounds.size.height/2;
button.clipsToBounds = true;

对于更大的屏幕,按钮会像这样:

Unexpected corner radius

有什么想法吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

在自动布局调整按钮大小后,您需要调整cornerRadius。在覆盖viewDidLayoutSubviews

时执行此操作
override func viewDidLayoutSubviews() {
    button.layer.cornerRadius = button.bounds.size.height/2
}