【发布时间】:2012-01-03 13:45:58
【问题描述】:
我以编程方式将 NSTextField 添加到我的 NSView:
NSTextField *projectLabel = [[NSTextField alloc] initWithFrame:frame];
[projectLabel setStringValue:@"projectName"];
[projectLabel setBezeled:NO];
[projectLabel setDrawsBackground:NO];
[projectLabel setEditable:NO];
[projectLabel setSelectable:NO];
[projectLabel setFont:[NSFont controlContentFontOfSize:13]];
projectLabel.autoresizingMask = NSViewMaxXMargin | NSViewMinYMargin;
[self addSubview:projectLabel];
[self setAutoresizesSubviews:NO];
此字段已正确添加,但是当我更改视图大小(甚至将窗口移动到第二个显示器)时,字段上的字体变化非常奇怪(见附图)。
开始时
更改大小后
我不知道我做错了什么
【问题讨论】:
-
并不是说这会有所帮助,但是您应该将大小传递 0.0 以获得默认大小的控件内容字体。
-
更相关的是:字体根本没有改变。文本字段是对文本的双重打击:多次绘制文本,每次都在之前的文本之上。
-
你说的很对,我每次都在drawRect上画这个标签,当大小改变的时候。
标签: macos cocoa nsview nstextfield