我想实现与[[NSFontManager sharedFontManager] addFontTrait:(nullable id)sender]仅使用我的代码相同的事情
医生说
This action method causes the receiver to send its action
message up the responder chain.
By default, the action message is changeFont:.
When a responder replies by providing a font to convert in
a convertFont: message, the receiver converts the font by
adding the trait specified by sender. This trait is determined
by sending a tag message to sender and interpreting it as a font
trait mask for a convertFont:toHaveTrait: message.
Run Code Online (Sandbox Code Playgroud)
所以我试过
NSFontManager …Run Code Online (Sandbox Code Playgroud) 好的,所以我已经检查了所有的SO和整个谷歌,我找不到我的代码有什么问题:
- (IBAction)selectFont:(id)sender
{
NSFontManager *fontManager = [NSFontManager sharedFontManager];
[fontManager setDelegate:self];
[fontManager setTarget:self];
NSFontPanel *fontPanel = [fontManager fontPanel:YES];
[fontPanel makeKeyAndOrderFront:sender];
}
- (void)changeFont:(id)sender
{
NSFontManager *fontManager = [NSFontManager sharedFontManager];
font = [fontManager selectedFont];
NSLog(@"%@",[fontManager selectedFont]);
}
Run Code Online (Sandbox Code Playgroud)
弹出字体面板,但是当我选择字体时,控制台将返回(null)字体管理器的选定字体.谁知道我错过了什么?
谢谢
我试图在互联网上找到一些东西,但是现在我没有答案,所以如果你可以帮助我会很棒!到目前为止我有一个NSFont对象,但我想要名称(作为NSString)和字体的大小,所以我可以输出!就像是
[NSFont fontWithName:@"Menlo" size:11];
Run Code Online (Sandbox Code Playgroud)
只有倒退,所以我得到了名字"Menlo"和11号.
感谢帮助!来自德国的Xcoder
cocoa ×2
nsfontpanel ×2
nsfont ×1
nsstring ×1
nstextfield ×1
nstextview ×1
objective-c ×1
xcode ×1