0
2つのUIViewControllerを持つかなりシンプルなアプリケーションがあります。 1つはメインビュー、2つ目はオプションページです。一方を他方にアニメートすると、回転が完了するまで、UISwitchesやその他のコントロールは完全に描画されません。アニメーションを使用しない場合、問題はありません。すべて正しく表示されます。コードは次のとおりです。アニメーションが完了するまでUIViewコントロールが描画されない
[UIView beginAnimations:@"View Flip" context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
if (self.optionsViewController.view.superview == nil)
{
if (self.optionsViewController == nil)
{
self.optionsViewController = [[OptionsViewController alloc] initWithNibName:nil bundle:nil];
}
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES];
[self.view insertSubview:self.optionsViewController.view atIndex:127];
}
[UIView commitAnimations];
設定キャッシュ:ほとんど答えではありませんでした。 UISwitchコントロールはうまくいきましたが、UINavigationBar /ボタンが変わってしまいました。transitionFromViewへの切り替えはうまくいきました...本当の問題はおそらく私がルートUIViewControllerを持っていないことを除いて、メインのUIViewControllerから移行しようとしています。この時点では、他のビューの親子化以外には使用されていないルートコントローラを使ってアプリケーションをやり直す方が良いと思います。 – bratboy