Xcode中的标签/文字显得模糊

时间:2015-10-11 22:11:39

标签: xcode cocoa nstextfield blurry

我正在尝试使用大量文本制作首选项视图。我无法弄清楚为什么运行项目时文本模糊,即使界面构建器非常清晰。这是一张照片。 [1]:http://i.stack.imgur.com/EQl6D.png

这是视图的代码:

@implementation SKMainWindowController

-(NSRect)newFrameForNewContentView:(NSView*)view {
NSWindow *window = [self window];
NSRect newFrameRect = [window frameRectForContentRect:[view frame]];
NSRect oldFrameRect = [window frame];
NSSize newSize = newFrameRect.size;
NSSize oldSize = oldFrameRect.size;

NSRect frame = [window frame];
frame.size = newSize;
frame.origin.y -= (newSize.height - oldSize.height);

return frame;

}

-(NSView *)viewForTag:(int)tag {

NSView *view = nil;
switch (tag) {
    case 0: default:
        view = welcome;
        break;
    case 1:
        view = status;
        break;
    case 2:
        view = power;
        break;
    case 3:
        view = preferences;
        break;
    case 4:
        view = about;
        break;

}

return view;

}

- (BOOL)validateToolbarItem:(NSToolbarItem *)item {

if ([item tag] == currentViewTag) return NO;
else return YES;
}

-(void)awakeFromNib {

[[self window] setContentSize:[welcome frame].size];
[[[self window] contentView] addSubview:welcome];
[[[self window] contentView] setWantsLayer:NO];

}
-(IBAction)switchWelcome:(id)sender {
int tag = [sender tag];
NSView *view = [self viewForTag:tag];
NSView *previousView = [self viewForTag:currentViewTag];
currentViewTag = tag;

NSRect newFrame = [self newFrameForNewContentView:view];

[NSAnimationContext beginGrouping];

if ([[NSApp currentEvent] modifierFlags] & NSShiftKeyMask)
    [[NSAnimationContext currentContext] setDuration:1.0];

[[[[self window] contentView] animator] replaceSubview:previousView with:view];
[[[self window] animator] setFrame:newFrame display:YES];

[NSAnimationContext endGrouping];

[welcomeButton setState:NSOnState];
[statsButton setState:NSOffState];
[powerButton setState:NSOffState];

}

我尝试通过像[textField setStringValue:@""];之类的操作将文本字段更改为代码,但没有运气它仍然模糊不清。谢谢你的帮助。 PS:这是针对可可,而不是iOS。

1 个答案:

答案 0 :(得分:0)

找到答案,结果是愚蠢的视觉效果视图不合作。简单的解决方法是将视觉效果视图设置为窗口内,并设置为非活动状态。 (虽然现在没有意义的视觉效果视图。)