IBDesignable/IBInspectable

Swift中使用IBDesignable/IBInspectable
可以直接在XIB或者Storyboard中直接,设置UI类的属性。
IBDesignable
加入这个可以修改的属性就可以在xib 或者 sb中直接显示出来

IBInspectable
加入这个标志 在设置中就可以直接看到 该属性

二者调节 可以直接在xib中展示使用 很方便 很强势的 IBDesignable/IBInspectable

我们可以定义一个view

@IBDesignable
class View: UIView {
@IBInspectable var cornerRadius: CGFloat = 0.0 {
didSet {
layer.cornerRadius = cornerRadius
layer.masksToBounds = true
}
}

@IBInspectable var borderColor: UIColor = UIColor() {
    didSet {
        layer.borderColor = borderColor.CGColor
    }
}

@IBInspectable var borderWidth: CGFloat = 0.0 {
    didSet {
        layer.borderWidth = borderWidth
    }
}

}

然后在XIB或Storyboard里面,拖一个UIView上去,把class改成自己定义的View

下面我们看
进阶使用
大大减小开发

extension UIView {
@IBInspectable var cornerRadius: CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue
layer.masksToBounds = newValue > 0
}
}
}
变!你创建的任何 UIView 都将有一个可配置的边界半径。




你可能感兴趣的:(IBDesignable/IBInspectable)