UIPopoverController 在“点击关闭”时关闭 - 我如何检测此事件?

Posted

技术标签:

【中文标题】UIPopoverController 在“点击关闭”时关闭 - 我如何检测此事件?【英文标题】:UIPopoverController dismiss on 'tap off' - how do I detect this event? 【发布时间】:2011-06-02 09:57:38 【问题描述】:

我在导航栏上使用了 UIPopover。我有几个 UIBarButtonItems 并且弹出框从其中之一扩展。

当 popOver 被激活时,我将按钮的样式更改为 UIBarButtonItemStyleDone

但是,popOver 按预期通过点击 UIPopoverController 来解除,但在此我想将样式改回UIBarButtonItemStyleBordered

有没有办法检测 UIPopOverController 是否正在关闭?因此为了我自己的需要而背负这个?

【问题讨论】:

【参考方案1】:

在您的UIPopoverControllerDelegate 中实现-popoverControllerDidDismissPopover: 方法,您应该能够在其中做您需要做的事情。

- (void) popoverControllerDidDismissPopover:(UIPopoverController *) popoverController 
   //do stuff here...

【讨论】:

谢谢!你为我节省了数小时的抓挠时间。干杯 嗨,网络上有没有地方可以清楚地看到这些类型的方法?我只想看到一个可以由 UI 上的某些操作触发的方法列表,有点像 .net 应用程序中的事件到事件处理程序。 出于某种原因,这不是为我开火,我错过了什么明显的东西吗?即它如何附加到 popOver 以知道要调用哪个委托或方法? IbrarMumtaz,您是否为此弹出框设置了 UIPopoverControllerDelegate?创建弹出框时,请务必将其“delegate”属性设置为创建弹出框的对象...并确保使用创建弹出框的类的@interface 声明指定 ios 13 起已弃用,并已替换为 presentationControllerDidDismiss

以上是关于UIPopoverController 在“点击关闭”时关闭 - 我如何检测此事件?的主要内容,如果未能解决你的问题,请参考以下文章

UIPopoverController 可以在屏幕上移动吗?

自动旋转时出现 UIPopOverController 问题

UIPopoverController:关闭后更新视图

在 UIPopoverController 中显示 UIViewController

定制的 UIPopoverController?

如何在 UIPopoverController 上创建按钮 [关闭]