我有一个具有 IBInspectable 值的 IBDesignable 类:Int
value 基本上是 IBDesignable 类中显示的球数
所以我有一个 setup() 函数,它使用 for _ 0 ..< value { } 添加正确的 imageViews(每个球一个)
但是在更改值时,我在 Interface Builder 中看不到新的球数
也许但Designables:更新停留在那里......
每次值更改时如何执行 setup() ?
提前致谢
我有一个具有 IBInspectable 值的 IBDesignable 类:Int
value 基本上是 IBDesignable 类中显示的球数
所以我有一个 setup() 函数,它使用 for _ 0 ..< value { } 添加正确的 imageViews(每个球一个)
但是在更改值时,我在 Interface Builder 中看不到新的球数
也许但Designables:更新停留在那里......
每次值更改时如何执行 setup() ?
提前致谢
试试这个代码
@IBDesignable
class SNButton:UIButton{
@IBInspectable var val: Int = 0
override func layoutSubviews() {
super.layoutSubviews()
for i in 0...val {
let ui = UIImageView(frame: CGRect(x: i, y: 0, width: 20, height: 20))
ui.backgroundColor = UIColor.red
self.addSubview(ui)
}
}
}
但我不建议您这样做,因为您会注意到情节提要变得非常缓慢