Ziel C Setter überschreibt Swift
Ich muss den Setter der hervorgehobenen UIViews-Eigenschaft in meiner benutzerdefinierten UIButton-Unterklasse überschreiben.
Ziel c
@property(nonatomic,getter=isHighlighted) BOOL highlighted;
so überschrieben
- (void) setHighlighted:(BOOL)highlighted {
[super setHighlighted:highlighted];
if (highlighted) {
self.backgroundColor = UIColorFromRGB(0x387038);
}
else {
self.backgroundColor = UIColorFromRGB(0x5bb75b);
}
[super setHighlighted:highlighted];
}
Schnell
var highlighted: Bool
Ich habe es versucht:
var highlighted: Bool {
get{ return false }
set {
if highlighted {
self.backgroundColor = UIColor.whiteColor()
//Error "Use unresolved identifier 'self'"
I can't set the background color from value type in here
, can't call self.backgroundColor in this value type ,
can't call super too because this is a value type , doesn't work
}
}
}
Wie und wo sollte diese Methode in Swift implementiert werden, um das gleiche Ergebnis zu erzielen. irgendeine Idee?