3

我有一個相當複雜的問題,我將盡可能描述。SplitViewController中的UIPopoverController

我有一個iPad應用程序和SplitviewController作爲我的主視圖。在縱向模式中,SplitviewController將Tableview隱藏到左側,以便DetailviewController僅可見。到現在爲止還挺好。

您使用這種方式的方式是,據我所知,如果點擊左側的單元格,我將用右側的Detailview替換爲我想要顯示的新視圖。爲此,我使用viewControllers屬性。

現在要顯示彈出窗口我有一個工具欄在頂部和一個菜單按鈕來顯示彈出窗口。

事情是這樣的:

我點擊一個細胞,並用新的viewController更換DetailviewController。但是現在Popovercontroller已經不存在了,因爲它是在舊的ViewController的頭文件中聲明的。

問題:當我在端口模式下點擊Menu按鈕時,popover不能顯示,因爲它現在爲零,因爲它還沒有啓動。

但我可以做的是:我將iPad旋轉到風景,然後再次旋轉它。該酥料餅回來,bacause在以下情況中splitviewcontroller的委託方法:

- (void) splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc { 

    self.popoverController = pc; 
} 

哪裏該PC從何而來?我怎麼能自己做。

如果我嘗試重新分配PopoverController,這將打破SplitviewController和應用程序中的工件出現。

我希望我解釋得很好。

任何想法?

回答