- 我有一个带有标签(TheLabel)的xib ...这是一个NSTextField。用户无法编辑其文本。
- 我将它的值绑定到我的控制器类中的 NSString* 。
- 我将它的字体绑定到我的控制器类中的 NSFont*。
我可以在我的控制器类中更改 NSString,我看到它反映在标签中。
我可以在我的控制器类中更改 NSFont,我看到它反映在标签中。
但...
我一生都无法弄清楚如何打开和关闭下划线。
如果我调用这个函数......
-(void)setUnderlineType:(NSNumber*)underline
{
NSMutableAttributedString* content = [[TheLabel attributedStringValue] mutableCopy];
[content addAttribute:NSUnderlineStyleAttributeName value:underline range:NSMakeRange(0, content.length)];
[TheLabel setAttributedStringValue:content];
}
...我得到一个下划线,但是绑定的字体被忽略了,我得到了一些标准字体。从那时起,更改我的控制器中的 NSFont 对 NSTextField 没有明显的影响。
我尝试在添加下划线之前从“内容”中删除属性...删除字体属性...但这也不起作用。
每当我调用此函数时,绑定到 NSTextField 的字体都会被“忽略”,并且我看到标准字体是标准大小。
任何指导将不胜感激。