UISplitViewController
に回転の問題があります。私の場合、別のビューを表示するためにsplitViewController
(このsplitViewControllerはウィンドウのルートビューです)で現在のモーダルを呼び出した後です。そのモーダルビューが回転すると、SplitViewは正しく回転しません。iPadのUISplitViewControllerは、modalViewが回転してもうまく回転しませんでした
splitビューは回転しているように見えますが、DetailViewController
はそのままポートレートに表示され、RootViewController
はまったく表示されませんでした。ポートレートモードのように動作します。 SplitViewは回転しているが、基になるビュー(DetailViewController
とRootViewController
)は回転していないようだ。
私はwillRotateToInterfaceOrientation
をmodalViewに実装しようとし、代理人を使ってsplitViewのwillRotateToInterfaceOrientation
メソッドを呼び出します。
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
[super willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
MacProjectAppDelegate *delegate = [[UIApplication sharedApplication] delegate];
[delegate.splitViewController willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
}
結果は、DetailViewController
が正しく動作ではなく、RootViewController
と:これは私がmodalViewに実装するものです
。それは隠されたままです。これは、ユーザーが手動でポートレートに戻って横に戻った後に再び表示されます。しかし、明らかにユーザーはそれを望んでいませんでした。
これは私がmodalView提示したときに何をしたかである。この場合、RootViewController
を表示する方法は
ModalViewController *modalView = [[ModalViewController alloc] init];
MacProjectAppDelegate *delegate = (MacProjectAppDelegate *)[[UIApplication sharedApplication] delegate];
[delegate.splitViewController presentModalViewController:modalView animated:YES];
[modalView release];
ありますか?それとも私のやり方が間違っているのですか?
編集: すべてのビューがmodalViewに続いて回転しなかったようです。 RootViewControllerもDetailViewControllerも回転しませんでした(両方のViewControllerでthe didRotateFromOrientation
が呼び出されていません)。だから私はそれがデバイス/ modalViewに続いて回転しなかったと仮定します。
UISplitViewからではなく、 'DetailViewController'からmodalViewControllerを表示しようとしましたか? –
私はそれを試して、それが動作していない。これまで私が試した解決策は 'appDelegate'を取得し、' willRotateToInterfaceOrientation'を2回呼び出す 'splitViewController'を取得することです。 1つは 'modalView'の' willRotateToInterfaceOrientation'メソッドで、もう1つは 'RootViewController'の' willAppear'メソッドです。 しかし、この方法にはまだ問題があります。 'DetailViewController'はポートレートモードのときと同じようにナビゲータボタンを表示します。私はまだこれに取り組んでいます。 – Kurotsuki
私は同じ問題を抱えています。ここで私の解決策を見てhttp://stackoverflow.com/questions/7767302/how-to-inform-the-parent-viewcontroller-about-thechanged-screen-orientation-in/10623628#10623628 – HammerSlavik