tableiviewを含むビューコントローラーをuinavigationコントローラーにプッシュしています。
CourseMenuViewController *mvc = [[[CourseMenuViewController alloc] initWithSlidingNavigationcontroller:self.slidingNavigationController] autorelease];
mvc.course = course;
[self.navigationController pushViewController:mvc animated:YES];
[self.navigationController setNavigationBarHidden:NO animated:NO];
これまでのところ、すべてが期待どおりに機能しています。私の問題は、アニメーションを見て、ビューが左からアニメーション化されているときに、すべてのテーブルビューの行が画面の上から下にアニメーション化されているのを見ると発生します。これにより、ビューが斜めのパスで左上隅から右下隅に移動しているように感じられます。
私の質問は、アニメーションではなくテーブルビューを表示させるにはどうすればよいですか?すべてのセルが静的であるため、NSFetchedResultsControllerなどからのデータを待機しないことを追加する必要があります。
以下のロロノアは私を正しい道に導いてくれました、そしてこれが現在機能しているバージョンです:
CourseMenuViewController *mvc = [[[CourseMenuViewController alloc] initWithSlidingNavigationcontroller:self.slidingNavigationController] autorelease];
mvc.course = course;
CATransition *caTransition = [CATransition animation];
caTransition.duration = 0.35;
caTransition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
caTransition.delegate = self;
caTransition.type = kCATransitionPush;
caTransition.subtype = kCATransitionFromRight;
[self.navigationController.view.layer addAnimation:caTransition forKey:nil];
[self.navigationController pushViewController:mvc animated:NO];