ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Swift 코드베이스 준비하기(페이지 전환이 필요할 때)
    카테고리 없음 2024. 7. 9. 12:38

    페이지가 하나인 코드베이스 준비 때와의 차이점

    UINavigationController를 선언 후, rootViewController에 ViewController()를 지정한다.

     // 페이지 전환을 위해 UINavigationController 선언 후 rootViewController에 ViewController 지정.
            window.rootViewController = UINavigationController(rootViewController: ViewController())

     

     

    1. main 삭제 과정

    더보기

    1. main을 삭제합니다.

     

    2. Info 내 main을 필터링해 삭제해줍니다.

     

    3. 파일의 Targets - Build Settings 'main'을 필터링해서 삭제해줍니다. 

     

     

     

    2. SceneDelegate로 가서 아래 코드를 세팅해줍니다. 

    import UIKit
    
    class SceneDelegate: UIResponder, UIWindowSceneDelegate {
            // 윈도우. 앱에 반드시 한 개는 필요한 가장 근본이 되는 뷰. 이 위에 뷰가 쌓이기 시작.
        var window: UIWindow?
    
            // 앱을 시작할때 세팅해줄 코드를 작성하는 곳.
        func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
            // UIWindow 객체 생성.
            guard let windowScene = (scene as? UIWindowScene) else { return }
            let window = UIWindow(windowScene: windowScene)
            
            // 페이지 전환을 위해 UINavigationController 선언 후 rootViewController에 ViewController 지정.
            window.rootViewController = UINavigationController(rootViewController: ViewController())
            
             // 이 메서드를 반드시 작성해줘야 윈도우가 활성화 됨.
            window.makeKeyAndVisible()
            self.window = window
        }

     

    실행해 봤을때 컴파일 에러 없이 잘 실행된다면 스토리보드 삭제 및 코드 베이스 UI 작성 준비 완료.

     

     

     

     

    페이지가 하나인 코드베이스 준비 때와의 차이점

    UINavigationController를 선언 후, rootViewController에 ViewController()를 지정한다.

     // 페이지 전환을 위해 UINavigationController 선언 후 rootViewController에 ViewController 지정.
            window.rootViewController = UINavigationController(rootViewController: ViewController())