我有一個基於SplitViewController的應用程序。它在popoverController中使用了一個rootViewController。該RootViewController的指定(在viewDidLoad中)如何在彈出一個viewControllers時更改popoverController的高度?
self.contentSizeForViewInPopover = CGSizeMake(320.0, 573.0);
當您在RootViewController的選擇一行設置酥料餅的高度,它推動一個secondViewController。所述secondViewController使得酥料餅的高通過指定(在viewDidLoad中):
self.contentSizeForViewInPopover = CGSizeMake(320.0, 900.0);
當用戶輕敲後退按鈕彈出secondViewController中,酥料餅的高度保持更高。我想調整高度回到原來的大小。我嘗試在viewWillAppear中設置contentSizeForViewInPopover,並在navigationController的willShowViewController委託方法中嘗試設置contentSizeForViewInPopover。但是這些沒有任何效果。
據我所知,這是財產應該如何工作。您可能想要向Apple(bugreport.apple.com)提交一個關於它的錯誤。 – 2010-04-29 16:25:46
我在我的應用程序中做同樣的事情,它似乎工作。也許在你的應用程序的另一部分有一些東西。在viewDidLoad中設置內容大小是正確的。在你的' - [viewWillAppear:]'和' - [viewWillDisappear:]'方法中,你在調用'super'實現嗎? – lucius 2010-04-29 20:08:21
Lucius,我將尺寸設置爲 - [viewsWillAppear]。我也在這個實現中調用[super viewWillAppear:animated]。 (void)viewWillAppear:(BOOL)animated { \t [super viewWillAppear:animated]; self.contentSizeForViewInPopover = CGSizeMake(320.0,573.0); } – Vic 2010-05-01 01:43:35