我正在将我的应用从基于单元格的 NSOutlineView
迁移到基于 View 的应用。我现在大部分时间都已切换,但将对象拖放到行上时突出显示的绘制方式存在问题。
标准的系统范围亮点如下所示(来自 NetNewsWire):
我的亮点看起来基本相同,但最重要的是,没有深蓝色边框:
如果没有这个,它看起来就很赤裸裸,而且我找不到任何我错误切换的属性。我使用的是 NSOutlineView
的自定义子类,其唯一覆盖的是 -frameOfOutlineCellAtRow:
。我没有在 IB 中自定义大纲 View (或其单元格 View )的属性。
最佳答案
我通过制作一个简单的测试应用程序解决了这个问题,我注意到它的行为正确。我逐个 Pane 比较了 IB 中的大纲 View ,直到发现差异。在“ View 效果”检查器中,我打开了背景层(在“核心动画层”部分下),一直向上延伸到堆栈。我取消选中所有这些框,并且得到了正确的突出显示,并且它仍然可以正确地设置动画。
关于macos - 基于 View 的 NSOutlineView 拖放突出显示不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8528874/