我试图用我的NSView
填充颜色,但它没有使用我想要的颜色。它只是黑色。
这是我对NSView的子类的实现:
#import "OCOvalView.h"
@implementation OCOvalView
- (id)initWithFrame:(NSRect)frame
{
self = [super initWithFrame:frame];
if (self) {
bgColorValue = [NSColor greenColor];//I WANT IT TO BE FILLED GREEN
}
return self;
}
- (void)drawRect:(NSRect)dirtyRect
{
[bgColorValue set];
[NSBezierPath fillRect:[self bounds]];//BUT IT ENDS UP BLACK!!
}
@end
如果我将[bgColorValue set];
更改为[[NSColor greenColor] set];
,它会有效,但我想使用如上所示的变量。
如何使填充颜色与bgColorData
的颜色相同?
答案 0 :(得分:1)
解决方案:由于我在bgColorValue
内设置了initWithFrame:frame
,因此在这种情况下不会调用它。我现在将变量设置为:
-(void)awakeFromNib{
bgColorValue = [NSColor greenColor];
}