Cocoa NSTableViewCell上的自定义背景图像

Cocoa NSTableViewCell上的自定义背景图像,cocoa,nstableview,Cocoa,Nstableview,我有一个基于视图的tableview,其中有一个自定义单元格,单元格上有一堆标签和一个图像。我想给每个单元格添加一个背景图像。首先,我尝试将imageview添加到单元格中,但这掩盖了选择突出显示。然后,我尝试设置tableview的背景,但在调整视图大小时图像会移动。我怎么能做到这一点呢?多亏了博伊法雷尔,我才能够弄明白。我按照他的建议做了,将NSTableRowView子类化,并在trackgroundinRect:中添加了如下背景: - (void)drawBackgroundInRect

我有一个基于视图的tableview,其中有一个自定义单元格,单元格上有一堆标签和一个图像。我想给每个单元格添加一个背景图像。首先,我尝试将imageview添加到单元格中,但这掩盖了选择突出显示。然后,我尝试设置tableview的背景,但在调整视图大小时图像会移动。我怎么能做到这一点呢?

多亏了博伊法雷尔,我才能够弄明白。我按照他的建议做了,将NSTableRowView子类化,并在
trackgroundinRect:
中添加了如下背景:

- (void)drawBackgroundInRect:(NSRect)dirtyRect
{    
    NSImage *backgroundImage = [NSImage imageNamed:@"plaincellbg.png"];
    [backgroundImage drawInRect:self.bounds fromRect:NSZeroRect operation:NSCompositeCopy fraction:1.0];
}

调整窗口大小时,图像将填充单元格并拉伸。

您希望图像如何显示在单元格中?例如,它将填充边界、平铺、拉伸,还是将表视图固定到图像大小?可能最简单的方法是子类NSTableRowView,并将backgroundColor属性设置为将图像加载到NSColor中。但这可能不是你需要的。