반응형
최근 코드로만 뷰를 작성하는 것에 관심이 생겼습니다!
그래서 이번에는 Storyboard 제거와 더불어 앱을 빌드 했을 때 화면을 불러오는 방법에 대해서 적어보도록 하겠습니다!
첫번째로 스토리보드를 제거해줍니다
우선 첫번째로 Main interface에 기본으로 설정되어 있는 Main 값을 지워줍니다.
다음으로 Xcode13 에서는 전체적으로 모양이 바껴서 헷갈리네요..ㅎㅎ
Info.plist를 수정해주어야 합니다.
확장을 하다보면 Storyboard Name이 있습니다.
Storyboard Name를 지워주면 됩니다.
그리고 SceneDelegate에 대음과 같은 함수를 적어줍니다.
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
}
마지막으로 Scene life cycle을 채택했을 때 , 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
}
감사합니다 코드로 뷰를 만드는 것이 생각보다 재밌어서 이렇게 설정을 해놓고 많이 연습을 해보도록 하겠습니다!!!
참고 자료
반응형
'Xcode' 카테고리의 다른 글
Xcode 에러) Unable to process request - PLA Update available 해결 (0) | 2022.11.27 |
---|---|
xcode 꿀팁) 자주 쓰는 코드 저장, Snippet 사용 (0) | 2022.07.12 |