【问题标题】:UIPopoverPresentationControllerDelegate methods only called on user dismissalUIPopoverPresentationControllerDelegate 方法仅在用户解雇时调用
【发布时间】:2014-10-15 18:15:25
【问题描述】:

弹出框最大的问题之一是委托的解除方法(-[popoverPresentationControllerShouldDismissPopover:]-[popoverPresentationControllerDidDismissPopover:])仅在用户解除弹出框时调用,而不是在弹出框以编程方式解除时调用。

在我的解除方法中有很多重要的代码需要被调用。是否有一个优雅的解决方案来确保即使在程序化解雇时也能调用此代码? (当然,我每次解雇时都可以称“应该”和“做了”……但这很容易出错,而且有点恶心。)

谢谢。

【问题讨论】:

  • 你找到什么优雅的解决方案了吗?
  • 这是我的answers,请查看。

标签: ios8 uipopovercontroller


【解决方案1】:

我不知道比每次以编程方式关闭它时手动调用它更好的解决方案。

[self popoverPresentationControllerDidDismissPopover:self.popoverPresentation];

这在 iOS SDK 中很常见。例如,如果您以编程方式选择表格视图中的一行,则不会调用委托方法tableView:didSelectRowAtIndexPath:

【讨论】:

    猜你喜欢
    • 2018-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多