Dev/iOS

[Dev, iOS] Storyboard 없이 첫 화면을 구성하는 법

100두산 2022. 1. 13. 11:03
728x90

storyboard로 개발을 하는게 더 편리하고  쉽지만, 가끔은 SnapKit 라이브러리를 활용하여 코드로 화면을 짤 수도 있습니다. Project를 생성하고, 기본으로 포함되어있는데 ViewController에 바로 개발을 할 수는 있지만, 굳이 필요 없는 무거운 파일들을 앱에 포함시킬 필요는 없어요.

 

1. ViewController 삭제

 

2. Info.plist > Information Property List > Application Scene Manifest > Scene Configuration > Application Session Role > Item 0 > Storyboard Name 삭제

 

3. Ctrl + N -> 새로운 VC 생성

 

4. SceneDelegate에 해당 코드 작성

func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
        
        // windowScene을 옵셔널로 선언하여 window에 할당
        guard let windowScene = scene as? UIWindowScene else { return }
        self.window = UIWindow(windowScene: windowScene)
        
        /*
        우리가 원하는 VC를 window의 rootViewController로 설정하는데,
        해당 코드에서 VC의 이름은 ViewController이며 NavigationController를 입혀준거라
        navigationViewController에 ViewController를 넣고 이 전체를 window의 rootViewController로 선언하는 과정
        */
        
        let rootViewController = ViewController()
        let rootNavigationViewController =  UINavigationController(rootViewController: rootViewController)
        
        self.window?.rootViewController = rootNavigationViewController
        self.window?.makeKeyAndVisible()
    }

여기까지 작성하고 build해보면, 우리가 원하는 첫 화면이 잘 표현됩니다.

728x90