当popover消失时,我可以发出通知吗(iPad)

时间:2012-06-20 15:33:35

标签: objective-c ios ipad notifications uipopovercontroller

当用户在弹出框架外按下时,我需要通知通知或其他任何内容。

由于

1 个答案:

答案 0 :(得分:8)

为什么不实施UIPopoverControllerDelegate协议?

假设您有一个名为MyController的控制器来显示弹出窗口。 在MyController.h中它表示它实现UIPopoverControllerDelegate,如下所示;

@interface DocumentViewController : UIViewController <UIPopoverControllerDelegate>

现在,在.m某处你可以显示popover并将其委托设置为self(这意味着MyController将成为popover的委托。)

UIPopoverController* pop = // init the popover here
pop.delegate = self;

此时,您可以实现该协议中列出的方法(通常必须实现所需的方法)。在您的情况下,您可以实现以下内容:

- (BOOL)popoverControllerShouldDismissPopover:(UIPopoverController *)popoverController
{
    // here I'm closing the popover...
}

- (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController
{    
    // here I closed the popover...
}

有关详细信息,请参阅UIPopoverControllerDelegate class reference

希望有所帮助。