나는 UIKit보다 Cocos2d-iPhone을 먼저 접했다. 애니메이션에 대한 욕심이 있었기때문에.. 그치만 Cocos2d는 게임 엔진에 최적화된 라이브러리다. 유틸리티 앱을 만드는 내 입장에서는 여간 부담스럽지 않을 수 없었고.. 점점 Cocos2d를 없애나가는 방법을 찾기 시작했다.
오 그런데 신기하게도 왠만한 애니메이션은 UIKit 프레임워크에서 지원을 해줬던 것이다.
그 와중에 UIKit에서 쉽게 구현하기 힘든 기능이 EaseIn, EaseOut 기능인데, 이건 어떤 사람이 잘 만들어 놓은 라이브러리가 있다. 그걸 가져다 쓰면 된다.
Github : UIView-EasingFunctions
사용법
[UIView animateWithDuration:.6 animations:^{ [view setEasingFunction:ElasticEaseOutforKeyPath:@"center"]; view.center=CGPointMake(160,415); }completion:^(BOOL finished){ [view removeEasingFunctionForKeyPath:@"center"]; }];
혹시 블럭 코딩을 잘 모르겠으면 구글에 꼭 검색해서 대충 감 잡고 사용해보시길. 난 기초가 부족하니 기초설명은 하지 않겠음.
[MyClass callBlock:^{ // ... }];
이렇게 생긴걸 블럭(block)이라 한다
► EaseIn, EaseOut은 점점 빠르게 혹은 점점 느리게 이런 효과를 말하는거다.
아래 다양한 Ease효과를 그래프로 그려놓은 이미지 참조
'Swift와 iOS' 카테고리의 다른 글
[iOS Objective-C] 공유하기 - 메시지, 카카오톡, 페이스북, 트위터... (0) | 2014.11.14 |
---|---|
[iOS Objective-C] Keyboard Delegate받아서 애니메이션하기 (0) | 2014.11.11 |
[iOS Objective-C] gif깔끔하게 지원해주는 ImageView 오픈소스 라이브러리 (0) | 2014.11.09 |
[iOS Objective-C] NSDate <-> NSStirng (0) | 2014.11.09 |
[iOS, Objectiv-C] 숫자에 3자리마다 쉽표 찍기 (int->NSString) (0) | 2014.11.09 |
WRITTEN BY
- tucan.dev
개인 iOS 개발, tucan9389
,