基于视图的NSOutlineView拖放突出显示不正确

时间:2011-12-16 01:40:17

标签: macos cocoa interface-builder core-animation osx-lion

我正在将我的应用从基于单元格的NSOutlineView迁移到基于视图的应用。我现在大部分已经切换了,但是当将一个对象放到一行上时,我遇到了突出显示方式的问题。

标准的系统级亮点看起来如此(来自NetNewsWire):

NetNewsWire selection

我的亮点看起来大致相同,但至关重要的是,没有深蓝色边框:

My own app's selection

没有它,它看起来很赤裸,我找不到任何错误切换的属性。我正在使用NSOutlineView的自定义子类,其唯一覆盖为-frameOfOutlineCellAtRow:。我没有在IB中自定义大纲视图(或其单元格视图)的属性。

1 个答案:

答案 0 :(得分:1)

我通过制作一个简单的测试应用程序解决了这个问题,我注意到它的行为正确。我比较了IB窗格中的大纲视图,直到我发现差异。在“视图效果”检查器中,我打开了背景层(在“核心动画层”部分下),一直向上移动。我取消选中所有这些框,我得到了正确的亮点,它仍然可以正确动画。