0

UIPopoverController に表示するように設定された 2 番目のビュー コントローラーがあります。ユーザーが「完了」ボタンをタップすると、データが最初のView Controllerに返されるように、2番目のView Controllerにデリゲートを設定しました。データは、ユーザーが行った選択のリストであり、単一の選択ではありません。

ユーザーがポップオーバーの外側をタップして閉じた場合、そのデータを最初のView Controllerに戻す方法を見つけるのに苦労しています。現在、ユーザーがポップオーバーの外側をタップして閉じた場合、データが失われます。

ポップオーバーの外側をタップしてポップオーバーを閉じることを制限できると思いますが、そうはしません。

何か案は?

4

1 に答える 1

3

を提示するときは、それをUIPopoverControllerに設定delegateしますself

そして、この関数をクラスに追加します

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

この関数は、ポップオーバーが閉じられたときに呼び出されます

于 2012-06-12T20:37:14.940 に答える