我试图通过添加一个可以在设计时更改的UIButton属性来扩展cornerRadius类,而不必构建应用程序。我使用以下扩展类:
import UIKit
@IBDesignable
extension UIButton {
@IBInspectable var cornerRadius :CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue
layer.masksToBounds = newValue > 0
}
}
}但是,当我在故事板中更改属性cornerRadius时,我没有看到这种变化发生在现场!我是不是漏掉了什么!
发布于 2015-09-08 23:17:28
扩展不尊重IBDesignable限定符。只有实际子类才会这样做。很烦人但却是真的。
发布于 2016-04-19 13:27:15
试试下面的代码:
@IBDesignable extension UIView {
@IBInspectable var borderColor:UIColor? {
set {
layer.borderColor = newValue!.CGColor
}
get {
if let color = layer.borderColor {
return UIColor(CGColor:color)
}
else {
return nil
}
}
}
}这将显示对运行时的影响
https://stackoverflow.com/questions/32468596
复制相似问题