将分隔符颜色更改为背景或从NSTableView中删除它

时间:2013-05-06 09:17:45

标签: objective-c macos cocoa nstableview

我希望在基于查看的NSTableView中删除分隔符颜色。

看起来像这样:

enter image description here

对于UITableView,有一个方法setSeparatorColor:但不适用于NSTableView。

解决方案将受到高度赞赏。

4 个答案:

答案 0 :(得分:13)

我这样做了:

将Intercell间距更改为:

[aTableView setIntercellSpacing:NSMakeSize(0, 0)];

并更改了单元格的高度,将视图的宽度设置为30.f,正在绘制的单元格为35.f

现在它是完美的,屏幕截图:

enter image description here

答案 1 :(得分:9)

对于NSTableView,Interface Builder具有Horizontal GridVertical GridGrid Color的设置。这些内容在API中反映为-setGridStyleMasksetGridColor

他们完全按照你的意愿行事。

[table setGridColor:[NSColor clearColor]];
[table setGridStyleMask:NSTableViewGridNone];

答案 2 :(得分:3)

接口生成器的答案:

enter image description here

答案 3 :(得分:0)

也许我可以提一下,在基于视图的表格中,NSTableRowView负责绘制分隔符。因此,在表的检查器中,将网格设置为“无”并在NSTableRowView子类中实现drawSeparatorInRect:,在您的情况下,这将意味着将其留空。