我推着一個包含tableiview到我uinavigation控制器視圖控制器:停止UITableView的動畫上推到UINavigationController的
CourseMenuViewController *mvc = [[[CourseMenuViewController alloc] initWithSlidingNavigationcontroller:self.slidingNavigationController] autorelease];
mvc.course = course;
[self.navigationController pushViewController:mvc animated:YES];
[self.navigationController setNavigationBarHidden:NO animated:NO];
到目前爲止好,一切按預期工作。當我觀看動畫時,出現了我的問題,並且當視圖從左側開始動畫時,看到我的所有表格視圖行都從屏幕頂部向下生成。這使得它感覺像是視圖從對角線路徑的左上角向右下角移動。
我的問題是,我怎樣才能使表視圖而不是動畫?我應該補充說,我所有的單元格都是靜態的,所以我不會等待NSFetchedResultsController或類似的任何數據。下面
roronoa把我在正確的道路上,這裏是現在工作版本:
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];
initWithSlidingNavigationcontroller是您在CourseMenuViewController類中編寫的自定義啓動項嗎? –
是的,對不起,只是認爲它是一個UINavigationController。我需要一些自定義功能,但該功能不會影響標準推送邏輯。 –