본문 바로가기
개린이 이야기

Custom Splash 화면

by iOS 개린이 2023. 1. 17.

iOS에서는 런치스크린(LaunchScreen)을 통해 Splash 화면을 구성한다.

런치스크린에 애니메이션, 폰트가 적용된 라벨 등을 넣고 싶은데 내가 방법을 못 찾는건지, 아예 불 가능한건지 모르겠다.

그래서 Splash 화면인 척하는 뷰를 만들어서 대용해 볼 것이다.

 

1. MainViewController와 SplashViewController를 만들고 꾸미기.

-원하는대로 꾸며주고 나서 두 가지 뷰 모두 스토리보드에서 Storyboard ID를 지정해주기.

 

Class : CustomTabBarViewController

Storyboard ID : TabBar

 

Class : CustomSplashViewController

Storyboard ID : CustomSplash

 

-필자는 UITabBarController안에 MainViewControoller가 있기 때문에 탭 바를 메인 뷰로 삼았다.

-SplashViewcontroller에는 커스텀 폰트를 적용한 라벨과 Lottie 애니메이션을 넣어주었음. 

 

 

2. SplashViewController를 런치스크린 이후 가장 먼저 등장하는 뷰로 만들어주기.

-SceneDelegate로 간다.

 

-가장 먼저 등장해야 하는 SplashView를 rootView로 선정해주기.

 

-여기까지 하면 런치스크린 이후에 뷰가 등장하는 것을 볼 수 있다.

이제 문제는 뷰를 적당한 시간 보여주고 메인 뷰로 보내줘야 하는 것

 

 

3. SplashViewController 이후 MainViewController로 화면 전환.

-스플래시 화면이 등장하고 3초 후에 rootView를 메인 뷰로 재설정해주는 것

 

-먼저 SceneDelegate에서 rootView를 재 설정해주는 함수를 만들어주기.

 

-SplashViewController로 돌아가서 3초 후에 SceneDelegate의 재설정 함수를 실행시켜주는 코드를 작성.

 

 

 

3. 완성