0

マスター詳細プロジェクトのマスターをポップオーバーとして使用していますが、サブビューを詳細ビューに追加する状況では、ユーザーがマスタービュー ポップオーバーをスライドさせたくない場合、とにかく非表示にするか、または一時的にポップオーバーを無効にしますか?

4

1 に答える 1

0

ポップオーバーが表示されるかどうかを確認し、ポップオーバーが表示されるという通知を受け取ったら、ポップオーバーを閉じることができます。

- (void)splitViewController:(UISplitViewController*)svc
         popoverController:(UIPopoverController*)pc 
 willPresentViewController:(UIViewController *)aViewController{
  if ([pc isPopoverVisible]) {
     [pc dismissPopoverAnimated:YES];
  }
}

iOS5以降、デリゲートコントローラー(通常は詳細ビューコントローラー)にsplitViewController:shouldHideViewController:inOrientationメソッドを実装すると、マスターコントローラーがポップオーバーに表示されないようにすることができます。

- (BOOL)splitViewController:(UISplitViewController *)svc
   shouldHideViewController:(UIViewController *)vc
              inOrientation:(UIInterfaceOrientation)orientation
{
  return NO;
}

最後の解決策は、あなたが見ているものの方が多いと思います。

于 2012-08-24T17:08:07.600 に答える