[英]Storyboard Designtime Layout Attributes
在为Android定义布局时,此功能非常相似,并且可以定义仅用于设计的属性。
http://tools.android.com/tips/layout-designtime-attributes
但是在使用情节提要制作iOS应用程序时,我没有找到任何等效的方法来做同样的事情。
目前,我正在清理ViewController的viewDidLoad上的所有设计值。 有没有一种方法可以将布局属性定义为设计占位符,并避免在所有视图控制器中执行setupClean步骤?
如果要在情节提要中即时反映特定组件的属性/属性,则可以使用@IBDesignable来实现。
为此,您必须将其反映在情节提要上的那种类型的子级别 。
脚步
制作想要反映在情节提要上的类型的子类,例如在这里的示例中,我将UILabel子类化为DGlabel
将其设置为@IBDesignable ,请参见示例
现在您可以从故事板上更改该属性的值,如下面的屏幕截图所示
import UIKit
@IBDesignable
class DGLabel: UILabel {
@IBInspectable var borderColor:UIColor = UIColor.red {
didSet {
reflectChange()
}
}
override init(frame: CGRect) {
super.init(frame: frame)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
func reflectChange() {
self.layer.borderWidth = 1
self.layer.borderColor = borderColor.cgColor
}
}
希望这将使您了解过程。
我认为您可以通过将IBDesignable
用于视图来实现类似的IBDesignable
。 然后,您可以使用prepareForInterfaceBuilder()
和TARGET_INTERFACE_BUILDER
生成模拟数据以在Interface Builder中显示。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.