I am trying to create the bellow property wrapper
@propertyWrapper
public struct ConstraintValue {
private let view:UIView
private let contraint:NSLayoutConstraint
public init(contraint:NSLayoutConstraint,view:UIView) {
self.contraint = contraint
self.view = view
}
public var wrappedValue: CGFloat {
set {
contraint.constant = newValue
view.layoutIfNeeded()
}
get {
return contraint.constant
}
}
}
But when I try to use it I am getting "Cannot use instance member within property initializer; property initialisers run before 'self' is available"
@IBOutlet weak private var imageViewHeightConstraint: NSLayoutConstraint!
@ConstraintValue(contraint: imageViewHeightConstraint, view: self)
public var imageHeight:CGFloat
Is there a way to passthrough this error ?