5

我正在尝试在 NSTableCellView 上设置背景颜色,但似乎没有办法做到这一点。

因此,必须有另一种我不知道的方法来实现这一点,所以,如果有人能启发我,我将不胜感激!

谢谢!

4

3 回答 3

12

ANSTableCellView 是 a NSView, aNSView 有 a CALayer, aCALayer 有 a backgroundColor。所以...

myTableCellView.wantsLayer = YES;  // make the cell layer-backed
myTableCellView.layer.backgroundColor = [[NSColor redColor] CGColor]; // or whatever color you like
于 2013-07-22T18:44:54.277 回答
1

您需要将 NSColor 对象转换为 CGColor 结构:

self.layer.backgroundColor = [[NSColor redColor] CGColor];
于 2015-06-07T05:06:33.007 回答
1

对于 Swift 3,根据 Caleb 的回答,这对我有用:

cell.wantsLayer = true
cell.layer?.backgroundColor = NSColor.red.cgColor 

我花了很长时间才找到这个问题和答案,我非常感激。

于 2017-03-20T19:01:13.417 回答