如何将 NSPredicateEditor/NSRuleEditor 背景设置为交替行?
Posted
技术标签:
【中文标题】如何将 NSPredicateEditor/NSRuleEditor 背景设置为交替行?【英文标题】:How to set NSPredicateEditor/NSRuleEditor background to alternating rows? 【发布时间】:2010-02-20 16:49:23 【问题描述】:我看到一些应用在其谓词编辑器中使用交替行背景,但我不知道他们是如何做到的。
【问题讨论】:
【参考方案1】:它们中的大多数早于 NSPredicateEditor,有些(例如 iTunes 中的那个)甚至不是 Cocoa。有些可能是具有非常复杂的自定义单元格的 NSTableViews 或 NSOutlineViews;其他的可能是完全自定义的,直接从 NSView 下降。
如果不能告诉 NSPredicateEditor 去做这件事,或者不能可靠地继承 NSPredicateEditor 来做这件事(即使它有私有方法,你可以重写来自定义它的绘图,你不能依赖那些现有的方法),这些是唯一的方法。
我认为这不值得。 NSPredicateEditor 和 NSRuleEditor 免费或几乎免费为您提供了很多功能,它们的默认外观可能是 Apple 希望这些视图在未来所有应用程序中的外观。在这种情况下,我说最好顺其自然。
【讨论】:
悲伤的消息。感谢你的回答。但是看看那些应用程序,例如 The Hit List,它们的编辑器比默认的“灰色”编辑器要好得多。而且我几乎可以肯定他们以某种方式定制了 NSPredicate/NSRuleEditor,因为该应用程序相对较新且仅 10.5+。 它看起来和工作起来都像 NSPredicateEditor,但查看 nib(在文本编辑器中,因为它已编译)显示它是一个“TRRuleEditor”,class-dump 的输出显示它是一个NSView 的直接子类——所以,它是一个很好的克隆。该应用程序的制作人员表示它是由 Reinvented Software 开发的,但 Google 找不到“TRRuleEditor”的匹配项。 彼得,非常感谢!我做了一个类转储,但我不太聪明,无法用文本编辑器打开 nib。以上是关于如何将 NSPredicateEditor/NSRuleEditor 背景设置为交替行?的主要内容,如果未能解决你的问题,请参考以下文章