Error Fix >> "Could not find a storyboard named 'Main' in bundle NSBundle "
Xcode로 앱개발을 진행할 때는 다양한 방법이 있습니다.
크게 storyboard 로 UI를 표현하는 방법과 code를 베이스로 UI를 표현하는 방법입니다.
다음은 코드베이스로 프로젝트를 생성할 수 있는 방법입니다.
Xcode에서 프로젝트를 생성합니다.
프로젝트명을 적어주시고, 인터페이스는 Storyboard 언어는 Swift로 설정하시면 됩니다.
(따로 core data나 test는 여기서 추가하지 않았습니다.)
과감하게 Main.storyboard 파일을 지워줍니다.
info.plist 파일에 위치한 Storyboard Name 지워줍니다.
Targets >> Build Settings >> info.plist Values >> UIKit Main Storyboard File Base Name의 이름인 'Main'을 지웁니다.
스토리보드를 지웠으니 코드로 초기 ViewController를 설정하겠습니다.
(iOS13 이후 UI Life Cycle은 SceneDelegate가 화면을 담당하고 있습니다.)
SceneDelegate.swift 파일로 이동합니다. >> 함수 부분에서 주석은 지워주시고, 다음과 같은 코드를 추가합니다.
guard let windowScene = (scene as? UIWindowScene) else { return }
window = UIWindow(windowScene: windowScene)
let viewController = ViewController()
window?.rootViewController = viewController
window?.makeKeyAndVisible()
// NavigationController를 rootViewController로 설정하는 경우
guard let windowScene = (scene as? UIWindowScene) else { return }
window = UIWindow(windowScene: windowScene) // SceneDelegate 프로퍼티 설정
let viewController = ViewController() // 뷰 컨트롤러 객체 생성
let rootNavigationController = UINavigationController(rootViewController: viewController)
window?.rootViewController = rootNavigationController
window?.makeKeyAndVisible()
수고하셨습니다.