iOS) Splash 화면에서 로그인 분기처리하기
Splash 화면 만들기
하단 출처의 개발자문서에서 애플은 첫번째 화면을 launch screen 과 흡사하게 만들라고 하고 있다.
- SplashViewController 에서 로그인 분기처리를 하기 위해서 Launch Screen 과 동일한 Splash 스토리보드를 만들었다.
로그인 분기처리
-
AppDelegate.swift 에서 로그인 유무를 판단할 수 있는 변수를 생성해두고 앱이 실행되면 application(_:didFinishLaunchingWithOptions:) 메서드 안에서 분기처리해서 변수를 바꾸어주었다.
-
SplashVC
// MARK: - Properties
// AppDelegate 에서 생성한 로그인 유무 변수
private let appDelegate = UIApplication.shared.delegate as? AppDelegate
// viewDidAppear() 에서 화면전환을 해주어야한다.
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
// 딜레이 후 화면 전환
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 0.5) {
self.setIsLogin()
}
}
// MARK: - Methods
private func setIsLogin() {
if appDelegate?.isLogin == true {
presentToHome()
} else {
presentToLogin()
}
}
private func presentToHome(){
//뷰전환 코드
}
private func presentToLogin() {
//뷰전환 코드
}