3

ポップオーバーに表示されるビュー コントローラーからモーダル ビューを読み込もうとしています。モーダル ビューが読み込まれますが、問題はポップオーバー内ではなくメイン ビューに遷移することです。それは私が欠けているものですか?ポップオーバー内のVCから単純に開始すると、同じポップオーバー内にモーダルビューが表示されると思いました...

コードは以下のように特別なものではありません:

- (IBAction)myButton{
ModalVC *controller = [[ModalVC alloc] initWithNibName:@"ModalVC" bundle:nil];

[self presentModalViewController:controller animated:YES];
[controller release]; }
4

3 に答える 3

19

追加すると

controller.modalPresentationStyle = UIModalPresentationCurrentContext;

presentModalViewController:animated を呼び出す前に、ModalVC をポップオーバー内に表示する必要があります。

ポップオーバーで何かをモーダルに表示するもう 1 つの方法は、プロパティ modalInPopover を使用することです。

于 2010-09-17T14:38:52.870 に答える
2

残念ながら、これはできないようで、HIG に違反しています。Apple のView Controller Programming Guideから

注: 別のビュー コントローラーをモーダルに表示する前に、常に表示されているポップオーバーを閉じる必要があります。アプリケーションでポップオーバーをいつどのように使用するかに関する具体的なガイドラインについては、iOS ヒューマン インターフェイス ガイドラインの「ポップオーバー (iPad のみ)」を参照してください。

于 2011-07-21T13:11:39.493 に答える
0

それはあなたがpresentModalViewControllerするからselfです。ViewController (self) に UIBarButtonItem を追加してみてください。

[controller presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

はどこsenderですかUIBarButtonItem

于 2010-05-13T03:38:23.043 に答える