0

我有第二个视图控制器设置为在 UIPopoverController 中显示。我在第二个视图控制器中设置了一个委托,因此当用户点击“完成”按钮时,它会将数据传递回第一个视图控制器。数据是用户做出的选择列表,而不是单个选择。

如果用户在弹出窗口之外点击并被解雇,我无法找到将数据传递回第一个视图控制器的方法。现在,如果用户点击弹出窗口的一侧并且它被关闭,我会丢失数据。

我想我可以通过在弹出窗口之外点击来限制他们解除弹出窗口,但我宁愿不这样做。

有任何想法吗?

4

1 回答 1

3

当您呈现 时UIPopoverController,将其设置delegateself

然后在类中添加这个函数

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

当弹出框关闭时将调用此函数

于 2012-06-12T20:37:14.940 回答