为什么 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
}
}
}
希望它有效。
我已经编辑了答案,你现在可以查看
例如
@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
}
}
}
希望它有效。 我已经编辑了答案,你现在可以查看