2013-01-22 104 views
6

我有一個NSSPopover內容的NSPopover。我創建了酥料餅並添加觀點是這樣的:顯示後調整NSPopover的尺寸

NSPopover *thePopover = [[NSPopover alloc] init]; 
[thePopover setContentViewController:myViewController]; 

我再展酥料餅和設置大小:

[thePopover setContentSize:NSMakeSize(300.0f, 160.0f)]; 

此時酥料餅是可見的,其含量的觀點是正確的。有沒有一種方法可以在不關閉並重新顯示它的情況下調整popover的大小?

回答

9

我能夠回調到通過委託協議推出的酥料餅的控制器,並使用setContentSize:

1

the documentation來自:

的酥料餅的內容大小設置當內容視圖控制器被設置爲內容視圖的大小相匹配。

因此,set the frame的popover的內容視圖。

0

NSWindow重置大小來實現這一具有私有財產存儲於NSPopover參考_popover。 你可以用它來從任何NSViewController訪問NSPopover實例(然後調用setContentSize:它)是這樣的:

- (NSPopover *)popover 
{ 
    NSWindow *window = self.view.window; 
    NSPopover *popover = [window valueForKey:@"_popover"]; 
    return popover; 
}