弹出框消失时我可以发出通知吗(iPad)
Posted
技术标签:
【中文标题】弹出框消失时我可以发出通知吗(iPad)【英文标题】:can I fire a notification when popover had disappeared (iPad) 【发布时间】:2012-06-20 15:33:35 【问题描述】:当用户在弹出框外按下时,我需要通过通知或其他方式知道。
谢谢
【问题讨论】:
查看文档中的 popoverControllerShouldDismissPopover:。它可能适合您的需求。 developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/… 【参考方案1】:为什么不实现UIPopoverControllerDelegate
协议?
假设您有一个名为MyController
的控制器来显示弹出框。
在 MyController.h 中说它实现了UIPopoverControllerDelegate
,如下所示;
@interface DocumentViewController : UIViewController <UIPopoverControllerDelegate>
现在,您可以在 .m 中的某个地方显示弹出框并将其委托设置为 self
(这意味着 MyController
将成为弹出框的委托)。
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。
希望对您有所帮助。
【讨论】:
显然在第一种情况下,需要返回一个BOOL
值!!以上是关于弹出框消失时我可以发出通知吗(iPad)的主要内容,如果未能解决你的问题,请参考以下文章