2012-01-13 84 views

回答

0

在您的UISplitViewControllerDelegate中,執行splitViewController:popoverController:willPresentViewController:。在該方法中,您應該可以將自己設置爲即將顯示的delegateUIPopoverController。然後,您可以簡單地從popoverControllerShouldDismissPopover:返回NO。然後,您將負責以編程方式解除UIPopoverController。

+0

對不起塞巴斯蒂安,但對我來說不是那麼簡單。我有Appdelegate.m,MasterViewController.m和DetailViewController.m。在縱向模式下,DetailViewController在彈出窗口中顯示MasterViewController,我按下頂部的「Master」按鈕。我使用splitViewController實現了在DetailViewController.m中的UISplitViewControllerDelegate:popoverController:willPresentViewController:但不停止隱藏彈出窗口。 – Massimo 2012-01-13 22:20:54

+0

@Massimo你能告訴我們你的代碼嗎? – 2012-01-14 13:54:56

0

OK,這裏解釋塞巴斯蒂安答案的代碼,只是它寫在DetailViewController.m:

- (void)splitViewController:(UISplitViewController *)svc popoverController:(UIPopoverController *)pc willPresentViewController:(UIViewController *)aViewController { 
pc.delegate = self; } 

-(BOOL)popoverControllerShouldDismissPopover:(UIPopoverController *)popoverController { 
return NO; } 
相關問題