我试图按照下面链接的帖子来覆盖NSTextField的NSCell,但看起来setCellClass
方法现在在OSX 10.10中已被弃用。
如何使NSTextField使用NSTextFieldCell的自定义子类?
应该如何覆盖NSTextField的单元格来替换子类?
这样做的原因是将NSTextField单元格的文本垂直居中,而苹果对此非常困难。
public override class var cellClass: AnyClass? { get { YourCustomCell.self } set {} }
在NSControl
子类上似乎有效。
简短的回答是:不要。根据发行说明,NSCell本身正在"逐渐被弃用"。
若要垂直对齐某些文本,可以使用布局约束。根据具体情况,您可能需要将NSTextField放入更大的NSView中。