检测“UIPopoverController”编程解雇动画的完成

Detect the finish of `UIPopoverController` programmatic dismissal animation

UIPopoverControllerDelegate 协议有 popoverControllerDidDismissPopover: 方法,该方法在弹出窗口完成其关闭动画后调用。但是,如果以编程方式关闭弹出窗口,则不会调用上述委托方法。

有什么方法可以检测以编程方式触发的解雇动画的结束吗?简而言之,如何实现 -[UIPopoverController dismissPopoverAnimated:completion:]?

P.S。 运行 带有 0.5 秒计时器的完成块很难看

However, if popover is dismissed programmatically, above-mentioned delegate method is not called.

iOS8 中的弹出窗口是呈现的视图控制器。因此,如果现在以编程方式关闭弹出窗口,则可以通过调用 dismissViewControllerAnimated:completion: 来完成,它有一个完成块,您将在其中被回调。你根本不应该使用 UIPopoverController。