使用按比例大小的图像设置NSImageView的背景颜色

时间:2015-06-08 14:17:38

标签: objective-c cocoa nsimage nsimageview

我已经将NSImageView子类化,其图像设置为NSImageScaleProportionallyDown,因此它不会总是占据视图的整个空间 - 这是应该的。现在我不知道如何分别改变背景颜色,除了图像之外仍未使用的空间颜色......默认为灰色。

我已尝试覆盖drawRect

- (void)drawRect:(NSRect)dirtyRect
{
    [[NSColor blackColor] setFill];
    NSRectFill(dirtyRect);
    [super drawRect:dirtyRect];
}

如果我将通话留给super,则会使整个ImageView变为黑色,而不仅仅是背景。如果它停留在那里,则根本没有变化 - 背景保持灰色......

任何人都对此有所暗示,我们将非常感激。

修改 我将ImageView的styleMask设置为NSImageFramePhoto - 我需要它,因为它可以按照需要的方式调整图像大小。如果我把它留下,背景颜色可以起作用,但有了它,就没有了。

0 个答案:

没有答案