MacOS-MacAPP的NSView改变背景颜色

Posted MinggeQingchun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MacOS-MacAPP的NSView改变背景颜色相关的知识,希望对你有一定的参考价值。

和移动端ios的UIView不同, NSView不能直接通过backgroundColor改变背景颜色,NSWindow是可以直接修改的

因此想要修改NSView的背景颜色有两种方法:

1、在layer上

    NSView *view = [[NSView alloc]init];
    view.frame = NSMakeRect(0, 0, 100, 100);
    view.wantsLayer = YES;
    view.layer.backgroundColor = [NSColor redColor].CGColor;
    [self.view addSubview:view];

2、自定义子类,在drawRect方法中改变背景色

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

 

以上是关于MacOS-MacAPP的NSView改变背景颜色的主要内容,如果未能解决你的问题,请参考以下文章

设置 NSView 的背景颜色

如何使用 Swift 在 Cocoa App 中设置 NSView 的颜色?

更改视图的背景颜色似乎很难?

如何改变webView背景颜色?

VC中改变窗口背景颜色和控件背景颜色

如何设置鼠标经过时,改变背景颜色?