具有突出显示和背景颜色的 NSTableView 布局问题

NSTableView Layout issue with Highlight and Background Color

我基本上是在尝试重新创建某些 Xcode 设置中存在的 popOver,例如构建设置中的这个:

我尝试过使用和不使用 NSArrayController 来控制内容,但在每个测试中我 运行 遇到了不同的问题,我没有遇到过能够解决。

想要的结果

1。使用委托方法。

当我设置好所有内容后,我得到了这个结果:

这看起来不太好,所以我选择了 "Draws Background" 作为 NSTableViewCell,这使得我编辑单元格时看起来不错:

但是当我只突出显示单元格时,它看起来像这样:

看起来突出显示放在单元格背景后面。

我卡住了,不知道如何解决。

2。使用 NSArrayController

当我重新配置并将其绑定到 NSArrayController 时,突出显示看起来很棒:

但是当我编辑一个单元格时,整个背景变成灰色:

这也不是我想要的,但不知道该怎么办。

--

备注

在 Desired Result 中,我列出了一些类似 "When I press the + button I want the new cell to be selected and in edit mode" 和 "I want to get notification of when text changes while editing to be able to respond to that." 的内容,以便可能影响对采取何种路线的选择,因为还有更多关于 thin TableView 的事情我还没有弄清楚。

但这个问题是关于如何修复突出显示和选择,使它们始终保持白色,并且只选择一个单元格看起来符合预期。

示例代码

委托方法版本的示例代码:

https://github.com/erikberglund/Whosebug/tree/master/TableViewDelegates

绑定版本的示例代码:

https://github.com/erikberglund/Whosebug/tree/master/TableViewBindings

强制外观为浅绿色。所以而不是继承select aqua。这为我解决了问题。