objective-c - cocoa : how to set background color of a view as light green color in cocoa without using CALayer?

标签 objective-c cocoa

我想在不使用 CALayer 的情况下设置 View 的背景颜色。

请帮帮我。

最佳答案

您没有指定您是在谈论 AppKit (OSX) 还是 UIKit (iOS)。我假设您正在谈论 AppKit,因为大多数来自 UIKit 的人都会遇到这个问题。

NSView 本身不绘制背景或背景颜色。您必须继承 NSView 并在 drawRect 中绘制自己的颜色,或者使用 AppKit 中提供的 NSBox 来绘制背景。

如果您继承 NSView,那么您的 drawRect 方法可能如下所示:

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

如果你决定使用 NSBox,那么你可以这样设置背景颜色:

[myBox setFillColor:[NSColor blackColor]];

关于objective-c - cocoa : how to set background color of a view as light green color in cocoa without using CALayer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11844799/

相关文章:

objective-c - Xcode Interface Builder 设置按钮的突出显示图像

objective-c - [NSMutableArray objectAtIndex :]: index 0 beyond bounds for empty array'

ios - Twitter登录解析iOS

ios - 如何在 swift 中将字符索引从布局管理器转换为字符串比例

ios - NSUserDefaults 在同步时崩溃

iphone - 使用特殊字符按字母顺序对核心数据进行排序

objective-c - 添加一个字符串对象到 NSMutuableArray

objective-c - 如果您使用自定义 getter/setter,属性上的 "atomic"和 "nonatomic"属性是否有任何影响?

macos - OS X 上系统空闲或不空闲时的通知

iphone - 如何类转储 iPad 应用程序?