在纵向模式下禁用SplitViewController中的自动隐藏Popover

时间:2012-01-13 18:49:15

标签: objective-c

在我的应用程序中,我使用的是SplitViewContorller。在纵向模式下,我不希望当用户触摸弹出窗口时弹出窗口消失。我想保持在前面直到用户做某事。怎么可能这样做?

2 个答案:

答案 0 :(得分:0)

UISplitViewControllerDelegate中,实施splitViewController:popoverController:willPresentViewController:。在该方法中,您应该能够将自己设置为即将显示的UIPopoverController delegate。然后,您只需从NO返回popoverControllerShouldDismissPopover:即可。然后,您将负责以编程方式解除UIPopoverController。

答案 1 :(得分:0)

好的,这里是解释Sebastian答案的代码,只是在DetailViewController.m上写了:

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

-(BOOL)popoverControllerShouldDismissPopover:(UIPopoverController *)popoverController {
return NO; }