2017-06-27 5 views
0

Ich bin auf OSX, XCode 8.3.3, Objective-C. Ich habe NSView * subclassed eine benutzerdefinierte Hintergrundfarbe zu setzen:NSView * subClass Farbe ändern animiert

.h

@interface SHViewWhiteBackground : NSView 

    @property NSColor* backgroundColor; 

@end 

.m

@implementation SHViewWhiteBackground 

- (void)drawRect:(NSRect)dirtyRect { 
    NSColor* fillColor = [NSColor whiteColor]; 

    if (self.backgroundColor) 
     fillColor = self.backgroundColor; 

    [fillColor setFill]; 
    NSRectFill(dirtyRect); 
    [super drawRect:dirtyRect]; 
} 

@end 

Jetzt i

[view setBackgroundColor:[NSColor someColor]]; 
[view setNeedsDisplay:YES]; 

nennen kann die Farbe zu ändern . Ich habe mich gefragt, ob es einen Weg gibt, diese Veränderung zu animieren?

Antwort

0

Ich endete mit Layer-Backed-Ansichten und dem Pop-Framework für die Animation.