popoverControllerDidDismissPopover:
方法已被替換爲popoverPresentationControllerShouldDismissPopover:
,因爲UIPopoverControllerDelegate
已被UIPopoverPresentationControllerDelegate
取代。
從您呈現視圖控制器,符合新的協議,併爲酥料餅的顯示控制器的代表在prepareForSegue:
:
class MyPresentingViewController: UIViewController, UIPopoverPresentationControllerDelegate {
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if let popoverPresentationController = segue.destinationViewController.popoverPresentationController {
popoverPresentationController.delegate = self
}
}
func popoverPresentationControllerShouldDismissPopover(popoverPresentationController: UIPopoverPresentationController) -> Bool {
return true
}
}
然後,您可以使用委託方法來處理的方式解僱的檢測你以前想要的。
請記住,didDismiss函數僅在popover解散時自動調用,例如它在外面觸摸。如果你自己用自己的代碼解僱它(例如從一個按鈕按下),那麼它將不會被調用。 – CMash