-
Default.png 로고 지연, 애니매이션 효과프로그래밍/아이폰 2010. 8. 25. 16:51
코드 주석에 /***** 번호 *****/ 로 주석에 달려있는 번호 순대로 작성하시면 됩니다.
#import <UIKit/UIKit.h>
@interface Splash_logoViewController : UIViewController {
/***************** 1 ****************/
//로고 조금더 보여줄 이미지 뷰입니다
UIImageView *splashImg;
}
/***************** 2 ****************/
//로고 보여주고 감출 메소드 선언해줍니다
-(void)showSplash;
-(void)hideSplash;@end
// Splash_logoViewController.m
@implementation Splash_logoViewController//로고 이미지 표시
-(void)showSplash{
/***************** 3 ****************/
//로고와 같은 이미지로 이미지뷰 생성/초기화
splashImg = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Default.png"]];
//화면에 이미지뷰를 추가합니다
[self.view addSubview:splashImg];
//0.5초 뒤에 hideSplash 호출합니다.
[self performSelector:@selector(hideSplash) withObject:nil afterDelay:0.5f];
}//로고 이미지 감춤
-(void)hideSplash{
/***************** 4 ****************/
//UIView 애니매이션 사용해서 책 넓김 효과로 합니다.
//코어애니매이션 사용하면 좀더 다양한 효과를 사용할수있습니다
[UIView beginAnimations:@"splashLogoAnimation" context:nil];
[UIView setAnimationDuration:0.5f];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];
//로고 있는 이미지뷰를 화면에서 제거합니다.
[splashImg removeFromSuperview];
//다시 쓸일 없으니 메모리를 해제합니다.
[splashImg release];
splashImg = nil;
//애니매이션을 시작합니다
[UIView commitAnimations];
//초기화...
//초기화시에 할일이 많으면 별도로 만들어서 로고 없앤 뒤에 하던지 showSplash호출 뒤에 초기화해주세요
//거의 그럴일은 없지만 default.png에서 이미지뷰로 바뀔때 깜박 거리지 않는다고 보장하지 못합니다
}
// Splash_logoAppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.// Add the view controller's view to the window and display.
[window addSubview:viewController.view];
/***************** 5 ****************/
//뷰컨트롤러에 로고 지연 호출합니다.
//감추는건 여기서 호출하지 않습니다.
[viewController showSplash];
[window makeKeyAndVisible];return YES;
}
www.devcel.co.kr 에서 소스 받으실수 있습니다.'프로그래밍 > 아이폰' 카테고리의 다른 글
다음 샘플은 xml 파서로 결정 (0) 2010.08.27 테이블뷰 실시간 커스텀 해볼까요 (0) 2010.08.27 hello world 만들기 ( 인터페이스 빌더 쓸때와 안쓸때 두가지) (0) 2010.08.25 디버그 모드 이외에 NSLog 무시하기 (0) 2010.08.25 NSString 메소드 몇가지 (2) 2010.08.25 댓글