我想自定义浮动组行背景的绘制,不能这样做。基本上我想要一个部分透明的背景(当滚动或不滚动时总是保持相同的外观),但是当表格视图不滚动时(尽管滚动它看起来像预期的那样),某些东西会改变NSTableRowView
的子类的外观。 下面是代码和解释问题的图像。如何绘制半透明的NSTableRowView?
- (void)drawBackgroundInRect:(NSRect)dirtyRect
{
[[NSColor colorWithCalibratedWhite:1.0 alpha:0.5] set];
[[NSBezierPath bezierPathWithRect:dirtyRect] fill];
}
对于表格单元格视图我试着用NSTableCellView是NSView和简单的NSTextField(这是你的图片上看到的一个),但结果总是相同的。
您的意思是.backgroundColor?如果是这样,那么我试图设置它,但它总是通过表视图重置。如果我在drawBackgroundInRect中调用super,那么它首先绘制默认的灰色背景,然后在灰色背景上绘制我的半透明覆盖图。 – Indoor
是的,抱歉,这就是我的意思。 – indragie