我在我的笔尖中创建了一个NSTableCellView,其中textField占据了整个空间,它非常适合显示文本和跟踪列的大小。
现在我希望能够在特定情况下为它设置纯色背景颜色(即,不是所有单元格)。我该怎么做?
我认为这就像this question,除了解决方案没有对我做任何事情,我也无法想出任何有效的方法。
我尝试过制作-tableView:viewForTableColumn:row:
方法......
由于我的文本占据了整个单元格视图,因此能够在textField或整个单元格视图上设置它都没问题。
这似乎应该是一个简单的设置,但没有任何作用。我是否需要将NSTableCellView子类化为具有背景颜色?
答案 0 :(得分:3)
我建议创建一个NSTableCellView的子类。它有助于创建可重复使用的组件(您甚至可以添加渐变以使其看起来不同)并分离责任。 您可以使用这个简单的代码并在NSTableCellView中更改类。
- (void)drawRect:(NSRect)dirtyRect
{
NSRect bounds = [self bounds];
[[NSColor redColor] set];
NSRectFill(bounds);
}