Macos NSTableCellView透明背景
在我的自定义NSTableCellView中,我以这种方式覆盖Macos NSTableCellView透明背景,macos,cocoa,nstableview,nstablecellview,Macos,Cocoa,Nstableview,Nstablecellview,在我的自定义NSTableCellView中,我以这种方式覆盖-(void)drawRect(我这样做是因为我有NSWindow的图案图像背景。我只需要在cellView中显示NSLabel) 我得到这个结果,它使整个NSWindow透明: 我想要的结果和do一样(看看红色的eclipse,您会看到cellView与父背景图像是透明的): 有两种方法可以改变单元格的颜色。 1) 执行代表:- - (void)tableView:(NSTableView *)tableView willD
-(void)drawRect
(我这样做是因为我有NSWindow
的图案图像背景。我只需要在cellView中显示NSLabel
)我得到这个结果,它使整个
NSWindow
透明:我想要的结果和do一样(看看红色的eclipse,您会看到cellView与父背景图像是透明的):
有两种方法可以改变单元格的颜色。 1) 执行代表:-
- (void)tableView:(NSTableView *)tableView
willDisplayCell:(id)cell
forTableColumn:(NSTableColumn
*)tableColumn
row:(NSInteger)row
然后在此基础上提取单元格值并使用setBackgroundColor
api
2) 第二种方法是使用tableview的
preparecellcolumn
api,该api将返回单元格值,然后设置backgroundcolor
我已经解决了我的问题:我使用了这个库(请阅读它的设置过程),并在xcode中使用了一些技巧:
我在tableView属性指令器中勾选了交替行。然后,只需在属性检查器中将tableView背景色设置为clearColor即可
我已经有了一个cell实例,因为我使用了自定义cell类。我为图层设置了setBackgroundColor,但不起作用。您是否正确获取了单元格内的值?是否可以粘贴代码,我需要检查您是如何设置的。在
CustomTableCellView
方法的self.layer.backgroundColor=[NSColor clearColor].CGColor代码>,它不工作。它是mac应用程序。我尝试了您的解决方案,实际上preparecellcolumn用于基于单元格的表格单元格,但我使用的是基于视图的;
- (void)tableView:(NSTableView *)tableView
willDisplayCell:(id)cell
forTableColumn:(NSTableColumn
*)tableColumn
row:(NSInteger)row