Ich versuche, Core-Animation zu verwenden, um ein Textfeld als ungültig hervorzuheben.Wie kann ich die Kernanimation verwenden, um die Hintergrundfarbe eines NSTextFields zu animieren?
[[my_field animator] setBackgroundColor [NSColor yellowColor]]
Aktualisiert die Feldhintergrundfarbe, animiert die Änderung jedoch nicht. Das Aktualisieren von Eigenschaften wie der Position des Felds wird ordnungsgemäß animiert. Ich gehe davon aus, dass Hintergrundfarbe nicht in der Suche NSAnimatablePropertyContainer enthalten ist.
Ich habe auch versucht, die Animation explizit zu erstellen, ohne Erfolg.
CABasicAnimation *ani;
ani = [CABasicAnimation animationWithKeyPath:@"backgroundColor"];
ani.fromValue = CGColorCreateGenericRGB(1.0,1.0,1.0,1.0);
ani.toValue = CGColorCreateGenericRGB(1.0,0.0,0.0,1.0);
ani.repeatCount = 2;
ani.autoreverses = YES;
ani.duration = 1.0;
[[my_field layer] addAnimation:ani forKey:"backgroundColor"];
Vorschläge zu diesem Zweck?
Es scheint, dass die Anwendung von benutzerdefinierten Filter (Filter mit einem benutzerdefinierten Namen) werden nicht von der öffentlichen 10.11 (El Capitan) Beta unterstützt. Der Code funktioniert jedoch, wenn Sie die setName-Zeile weglassen und den Schlüsselpfad auf @ "filters setzen. CIFalseColor.inputColor1"; direkt. – deflozorngott
Auch seit 10.9 müssen Sie self.layerUsesCoreImageFilter = YES; – deflozorngott