

// 뷰컨일 경우
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
guard let windowScene = (scene as? UIWindowScene) else { return }
let window = UIWindow(windowScene: windowScene)
window.rootViewController = ViewController() // 시작 VC 작성해주기
window.makeKeyAndVisible()
self.window = window
}
//네비게이션 컨트롤러 추가
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
guard let windowScene = (scene as? UIWindowScene) else { return }
window = UIWindow(windowScene: windowScene)
let mainViewController = ViewController()
let navigationController = UINavigationController(rootViewController: mainViewController)
window?.rootViewController = navigationController
window?.makeKeyAndVisible()
}
iOS 13이전의 기기에서도 작동하게 하려면 AppDelegate에 다음과 같은 코드를 추가
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// 13이상인 경우에는 SceneDelegate에서 이미 초기화 되었으니까 바로 return
if #available(iOS 13.0, *) {
return true
}
// 13이전의 경우에는 SceneDelegate에서 해주었던 작업을 그대로 진행해주면 된다.
window = UIWindow()
window?.rootViewController = ViewController() // 시작 VC 작성해주기
window?.makeKeyAndVisible()
return true
}