我正在尝试更改我创建的NSButton子类的字体。当我使用以下代码设置实际按钮时,我可以设置字体:
[button setFont:[NSFont fontWithName:@"Courier" size:15]];
但是,当我稍后在应用程序中尝试这样做时,它不起作用。
我正在尝试让用户选择一种新的字体;一旦他们完成了这项工作,我想更新这个按钮以使用选定的字体。
我知道我的字体选择过程不是问题所在,因为我可以根据用户的选择更改其他UI项目的字体。
此外,我认为问题是由于我的子类正在进行CABasicAnimation,但当我删除动画时,它仍然不起作用。此外,我甚至可以在动画运行时更改按钮的字体颜色。
最后,我确信我的插座连接正确。
那么问题从哪里来呢?过去有人经历过类似的问题吗?
我建议您检查IB连接,因为setFont:
应该可以工作。
或者你可以尝试使用:
(void)setAttributedTitle:(NSAttributedString *)aString
其中可以从创建NSAttributedString
- (id)initWithString:(NSString *)aString attributes:(NSDictionary *)attributes
其中属性可以创建为:
NSDictionary * attributes = [NSDictionary dictionaryWithObject:[NSFont fontWithName:@"Courier" size:15] forKey:NSFontAttributeName];