2012-06-23 2 views
0

새보기를 제공하기 위해 이러한 코드를 사용하고 있습니다. 좋지는 않습니다. 현재 기본 애니메이션은 아래에서 위로보기를 표시하지만 오른쪽에서 왼쪽으로 애니메이션을 적용 (플라이 인)하려면 기본 애니메이션 유형을 변경하는 것이 가능합니까? 감사.iphone dev : 뷰 전환 애니메이션을 제어하는 ​​방법은 무엇입니까?

[self presentModalViewController:navController animated:animated]; 

답변

1

이 같은 슬라이드 업 애니메이션을 비활성화 할 수 있습니다

[self presentModalViewController:navController animated:NO]; 

그런 다음 당신은 당신의 자신의 애니메이션 코드를 제공 할 수 있습니다 :이 예를 당신에게 제공

navController.view.frame = CGRectMake(320, 0, navController.view.frame.size.width, navController.view.frame.size.height); 

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:0.5]; 
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut]; 
navController.view.frame = CGRectMake(0, 0, navController.view.frame.size.width, navController.view.frame.size.height); 
[UIView commitAnimations]; 

을 "플라이에 "부드러운 속도 곡선으로 오른쪽에서.

또 다른 방법은 바로있는 navigationController과에서 슬라이드에 내장 된 사용 :

[self.navigationController pushViewController:navController animated:YES]; 

을이 일에서 최상위의 ViewController UINavigationController가 있어야하고 rootcontroller 당신의 ViewController 할 필요가있다. 그런 다음 다른 viewcontroller를 푸시 (push) 할 수 있습니다. 나를 배 부르게 시도에 대한

+0

안녕 덕분에,하지만 효과에 왼쪽 즉시 바로 사용하여 아이폰 응용 프로그램의 대부분은,이 기능을 제공하는 시스템이다 궁금? –

+0

예, 답변을 수정합니다 – JulenissensHjelper

+0

고맙습니다. –

0

나는이 그 작업을 수행 한 :

[UIView beginAnimations:nil context:nil]; 
      [UIView setAnimationDuration:0.6]; 
      [UIView setAnimationDelegate:self]; 
      [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.View2.superview cache:YES]; 
      [self.View2 removeFromSuperview]; 
      [self performSelector:@selector(replaceViews2) withObject:nil afterDelay:0.6]; 
      [UIView commitAnimations]; 
관련 문제