【发布时间】:2017-07-19 13:01:16
【问题描述】:
下面给出的类工作正常
@IBDesignable class iButton : UIButton {
@IBInspectable var cornerRadius : CGFloat = 0.0{
didSet{
layer.cornerRadius = cornerRadius
}
}}
但问题是,当我在 Attribute Inspector 中为尺寸为(宽度:70,高度 70)的按钮设置cornerRadius 值 35 时。我在情节提要上得到了圆形按钮,但是在模拟器上运行它时,它不是圆形的,而是圆角矩形。
我在 xCode 上的设计视图是 iPhone-SE,并在 iPhone-7-plus 模拟器上模拟。
我还通过在 Size Inspector 上设置高度和宽度来启用自动调整大小。
据我所知,角半径应该是宽度的一半。当按钮通过自动调整大小调整大小时,为什么不调整角半径。我该如何解决这个问题?
提前致谢。
【问题讨论】:
-
给出按钮约束,然后使用它来代替
button.layer.cornerRadius = button.frame.width/2 -
对于圆形按钮会有所帮助,但并非对所有情况都适用@DatForis
标签: ios xcode swift3 cornerradius ibinspectable