popupwindow.contentViewController
のプロパティを、異なるサイズのビューをNSPopover
持つ新しいものに変更する必要があります。NSViewController
つまり、ビューのフレームのサイズを変更すると、奇妙な描画の問題が発生するだけです。ポップオーバーウィンドウのサイズを変更するには、を変更するcontentViewController
必要があります。
NSViewController
理想的には、基本的に既存ののコピーであるが、より高い/より短いビューを含む新しいビューコントローラを設定します。しかし、最悪のシナリオでは、次のようなことができます。
gPopoverWindow.contentViewController = [[[NSViewController alloc] initWithNibName: @"tempNibName" bundle: nil] autorelease];
NSView *v = self.view;
NSRect b = [v frame];
b.size.height += 25;
[v setFrame: b];
gPopoverWindow.contentViewController = self;
私のテストでは、これにより、ポップオーバーが縮小アニメーションを開始し(一時ビューコントローラーに設定されているため)、その後、新しいサイズに成長しました。