// ViewApplication.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
{
IBOutlet UIImageView *aniview1;
}
@end
// ViewApplication.cpp
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
aniview1.animationImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"ani01.png"],
[UIImage imageNamed:@"ani02.png"],
[UIImage imageNamed:@"ani03.png"], nil];
aniview1.animationDuration=0.50; // 초단위 이미지 변경 시간(숫자가 작을수록 빨라집니다)
aniview1.animationRepeatCount=0; // 반복횟수, 0이면 무한 반복
[aniview1 startAnimating];
[self.view addSubview:aniview1];
}
코드보시면 따로 설명드릴 부분은 없는 듯 하네요.
안드로이드의 경우도 Frame Animation을 사용해서 png 등 이미지 파일을 배열에 저장해놓고 불러와서 루프를 돌리는 형식이던데, 아이폰도 크게 다르지 않네요. (분명히 더 효율적인 방법이 있을 것같은데...) 안드로이드에서는 파일의 용량이 크고 24장정도되니까 배열에 넣는데 로딩시간이 조금 걸리더라구요. 아이폰은 간단한 파일들로 테스트를 해봐서 로딩시간에 대해서는 정확히 모르겠습니다. 추후 새로운 방법이 있다면 포스팅 하도록 하겠습니다.
- 주의! 미처 생각하지 못한 부분인데 imageNamed 로 이미지를 불러올 경우 (모바일이라는) 한정된 자원 내에서 같은 이미지파일을 다른 곳에서 부르는 경우 계속 메모리가 할당된다거나, 빠른 재사용을 위해 캐시상에 남아있다는 점 때문에, http://lambert.tistory.com/archive/20110120 을 참고해서 딕셔너리에 넣거나 싱글톤을 통해 사용한 이미지를 지속적으로 사용하는 방법을 추천합니다.
'옛글 > 아이폰 프로그래밍' 카테고리의 다른 글
[iOS프로그래밍] 한글지원 TTS API ISpeech (0) | 2012.05.09 |
---|---|
[iOS프로그래밍] JSON파싱하기(SBJSON & NSJSONSerialization) (1) | 2012.05.09 |
[iOS프로그래밍] #Define 전처리문 (1) | 2012.05.07 |
[iOS프로그래밍] 외부 프레임워크(framework) 추가하기 (0) | 2012.05.06 |
[iOS프로그래밍] Protocol ? (1) | 2012.05.06 |