Pencereyi yeni görünümün boyutuna yeniden boyutlandırmak için aşağıdaki kodu kullanıyorum setCurrentView yöntemiyle bir NSWindowController sahibiyim.NSWindow'un yeni NSViews ile sığacak şekilde yeniden boyutlandırılması, görünümlerin yanlış çizilmesine neden oluyor
[self resizeWindowForContentSize: [newView frame].size];
NSView *contentView = [[self window] contentView];
NSDictionary *ani = [NSDictionary dictionaryWithObject:transition
forKey:@"subviews"];
[contentView setAnimations:ani];
[[contentView animator] replaceSubview:currentView with:newView];
Düzenleme: CocoaDev bulunan resizeWindowForContentSize eklendi.
- (void)resizeWindowForContentSize:(NSSize) size {
NSRect windowFrame = [NSWindow contentRectForFrameRect:[[self window] frame]
styleMask:[[self window] styleMask]];
NSRect newWindowFrame = [NSWindow frameRectForContentRect:
NSMakeRect(NSMinX(windowFrame), NSMaxY(windowFrame) - size.height, size.width, size.height)
styleMask:[[self window] styleMask]];
[[self window] setFrame:newWindowFrame display:YES animate:[[self window] isVisible]];
}
yaşıyorum sorun (NSToolbar kullanarak) görünümler arasında geçiş olarak görüşlerini contentView içinde hareket etmek başlamasıdır. Zamanla, aslında boş bir görüşe sahip olana kadar, daha fazla ve daha uzaklaşırlar.
Eğer '-resizeWindowForContentSize gönderebilir miyim:' yöntem bu senin
-resizeWindowForContentSize:
yöntemdeki sorun olduğunu varsayarak Örneğin? – NSGod
Yayını bu yöntemle güncelledim. – doomspork