为什么 UIView 的扩展不会直接影响除 IB 上的 UIView 之外的其他控件?

Why extension for UIView does not showing direct effect on other control except UIView placed on IB?

例如

@IBDesignable extension UIView{
    @IBInspectable var fillColor:UIColor?{
        set{
            backgroundColor=newValue
        }
        get{
            return backgroundColor//UIColor(cgColor: backgroundColor!)
        }
    }
}

我知道这是不必要的,但只是为了检查我创建了这个,发现如果在 UIView 中应用它可以直接工作,否则它不起作用。

任何人都可以告诉我我是否遗漏了什么?我正在使用 swift 3.0.2。 提前致谢:)

试试这个

当您扩展 UIView 时

class AJView:UIView{
    @IBInspectable var fillColor:UIColor? {
       didSet {
           layer.backgroundColor = fillColor.cgColor
       }
    }
}

与扩展一起使用时

     extension BTextField{
    @IBInspectable var fillColor:UIColor? {
        get{
            return self.fillColor
        }
        set {
            layer.backgroundColor = self.fillColor?.cgColor
        }
    }
}

希望它有效。 我已经编辑了答案,你现在可以查看