我如何为这样的应用程序窗口着色?

时间:2014-07-01 08:44:58

标签: macos cocoa tint

我是OSX开发的新手。

如何将应用程序着色为深灰色,就像这样?

enter image description here

是否可以从界面构建器执行此操作?如果没有,我该如何从代码中做到这一点?

1 个答案:

答案 0 :(得分:2)

要更改窗口标题栏颜色,请在IB中将窗口设置为纹理。然后在相应的视图中,控制器/ app委托更新窗口颜色。

NSColor *grayColor = [NSColor colorWithCalibratedRed:64/255.0f
                                               green:64/255.0f
                                                blue:64/255.0f
                                               alpha:1.0];
[self.window setBackgroundColor:grayColor];

现在窗口会是这样的:

enter image description here

使用工具栏:

enter image description here

请注意,当窗口设置为纹理时,整个窗口将被纹理化。我已经将视图子类化并将背景设置为白色:

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

否则窗口会这样:

enter image description here