我想在输入文本时操纵基线NSTokenField
以匹配显示的标记。为此,我遵循文档中的“使用字段编辑器”指南。建议在编辑之前覆盖- (NSText *)setUpFieldEditorAttributes:(NSText *)textObj;
关联的方法NSTextFieldCell
以调整字段编辑器属性。这是我在那里做的:
- (NSText *)setUpFieldEditorAttributes:(NSText *)textObj {
textObj = [super setUpFieldEditorAttributes:textObj];
if([textObj isKindOfClass:[NSTextView class]]) {
NSTextView *fieldEditor = (NSTextView *)textObj;
[fieldEditor raiseBaseline:self];
[fieldEditor raiseBaseline:self];
[fieldEditor raiseBaseline:self];
NSLog(@"Raised editor baseline");
}
return textObj;
}
正如我可以在日志的帮助下确认的那样,调用了 get 方法。但是,基线在编辑时根本不会改变。同样调用其他类似[fieldEditor loosenKerning:self]
的方法应该产生可见的结果似乎没有任何效果。我在这里做错了什么或做得更好 - 我怎样才能实现我想要的?