2012-02-22 5 views
0

内部モーダルビューコントローラとポップオーバーを閉じ、その後、私は介してこのポップオーバー内部ABPeoplePickerNavigationController提示:私は内部ナビゲーションコントローラとポップオーバーを有する

self.abPicker.modalPresentationStyle = UIModalPresentationCurrentContext; 
self.abPicker.modalInPopover = YES; 
[self presentModalViewController:self.abPicker animated:YES]; 

問題は場合ポップオーバーは、この段階で却下することができないことです私は外のpopoverのエリアを押す、何も起こらない。

アイデア?

答えて

0

デリゲート(peoplePickerDelegate)を割り当てられません。デリゲートイベントのみが、提示されたビューコントローラを却下することができるので、デリゲートが絶対必要です。デリゲートイベントは、ABPeoplePickerNavigationControllerのdismiss...を呼び出します。

結果のポップオーバーをモーダルにしたくない場合は、なぜABPeoplePickerNavigationControllerをpresentModalViewControllerと表示しましたか?それはモーダルであることを意味します!あなたはそれをモーダルにして、モーダルであると訴えています。これはあなたの顔に当たって、あなたの顔が殴られていると不平を言うようなものです。

iPadの通常のことは、ABPeoplePickerNavigationControllerをインスタンス化し、それを新しいポップオーバーコントローラのView Controllerとして直接使用することです。

+0

はい、私は(ちょうどここで完全なコードを逃した)、すべての代理人のものは、ボタンと連絡先の選択をキャンセルしています。 – artysx

+0

しかし、標準的な振る舞いは、あなたがポップオーバー外を押すと、消えてはいけません。動作していません。私はモーダルビューコントローラのポップオーバーのデリゲートをもう一度セットアップする必要があると思っていますが、どこを理解できません。 – artysx

関連する問題