본문 바로가기
프로그래밍/iOS

뷰 Animation효과 - 모달창 띄우기 / 창뒤짚이는효과 / 페이지넘김효과

by 백룡화검 2011. 6. 3.
>> 모달창 효과
1. View-base로 프로젝트를 생성한다.

2. 모달로 띄울 용도의 뷰컨트롤러 클래스를 추가한다. ( UIViewController subclass / XIB가짐 )
클래스명 : MyModal

3. 부모 View에서 특정 액션시에 아래와 같이 MyModal 뷰를 띄운다. ( 부모뷰컨트롤러의 presentModalViewController:animated: 메서드를 이용한다. )

MyModal* myModal = [[MyModal alloc] initWithNibName:@"MyModal" bundle:nil];
[부모뷰컨트롤러객체 presentModalViewController:myModal animated:YES];
[myModal release];

4. 모달로 뜬 View 에서 특정 액션시 아래와 같은 처리로 모달을 닫는다. ( 모달로뜬 뷰컨트롤러의 dismissModalViewControllerAnimated: 메서드를 이용한다. )

[모달뷰컨트롤러객체 dismissModalViewControllerAnimated:YES];
-----------------------------------------------------------------------------------
>> 창뒤짚이는 효과

 UIView 의 클래스메서드들을 이용해서 구현한다.

1. 아래와 같은 코드로 창을 뒤짚는다.

MyRotate* myView = [[MyRotate alloc] initWithNibName:@"MyRotate" bundle:nil];

[UIView beginAnimations:@"left flip" context:nil];

[UIView setAnimationDuration:0.5];

[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];

[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES]; // 페이지 넘김효과시 옵션 변경

[self.view addSubview:myView.view];

[UIView commitAnimations];


2. 아래와 같은 코드로 돌아온다.

[UIView beginAnimations:@"back" context:nil];

[UIView setAnimationDuration:0.5];

[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];

[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view.superview cache:YES];

[self.view removeFromSuperview];

[UIView commitAnimations];

-----------------------------------------------------------------------------------
>> 페이지 넘기는 효과 ( 창뒤짚는 효과와 절차는 같다. 옵션만 틀릴 뿐이다. )

1. 페이지 넘길때 ( 옵션부분을 아래와 같이 고친다. )

[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];


2. 돌아올때 ( 옵션부분만 수정 )

[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self.view.superview cache:YES];




-- appsnext.com 정리

출처 : http://devroid.com/80111615651

'프로그래밍 > iOS' 카테고리의 다른 글

iPhone용 Open Source 모음  (0) 2011.06.05
위치정보(GPS)  (0) 2011.06.03
@property 옵션 정리  (0) 2011.06.03
iOS 메모리 관리  (0) 2011.06.02
MPMoviePlayerController의 Notifications목록  (0) 2011.06.02