从UIPopOverPresentationController获取数据值到UIViewController?

时间:2015-04-22 12:19:48

标签: ios swift uipopover

我想从呈现的popover中获取值。我用Google搜索并得到了这个答案

- (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController
{
    YourViewController *controller =  popoverController.contentViewController;
    MyData *data = controller.yourData;
    //Do something with data
}

但是我使用了UIPopOverPresentationController。那么我怎么能从这些委托方法中获取价值呢

func popoverPresentationControllerDidDismissPopover(popoverPresentationController: UIPopoverPresentationController) {

   // var controller = popoverPresentationController.


}

或者我应该创建委托以将数据传递回主视图控制器吗?

1 个答案:

答案 0 :(得分:6)

查看UIPopoverPresentationController的文档,它继承自UIPresentationController

它具有属性presentingViewControllerpresentedViewController。其中一个应该引用您想要访问的控制器并将数据传递给/从以下数据获取数据:

func popoverPresentationControllerDidDismissPopover(popoverPresentationController: UIPopoverPresentationController) {
    let controller = popoverPresentationController.presentedViewController
    // Fetch data from the presented controller
}