AppDelegate에 '창' 변수가 없습니다. - CoreData

Apple 웹사이트에서 Swift에 대한 "Setting Up a Core Data Stack "튜토리얼을 따라하다가 rootVC = window?.rootViewController 부분에서 멈춘다면 혼자가 아닙니다.

iOS 13(Xcode 11)부터 UIKit의 수명 주기는 UISceneDelegate를 도입했습니다. read more here .

따라서 자습서 대신 다음 코드를 사용하여 변경해야 합니다.

AppDelegate.swift

class AppDelegate: UIResponder, UIApplicationDelegate {

    ...

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {        
        // Just leave it as it, don't change anything
    }

    ...
}

SceneDelegate.swift

func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {

        ...

    rootVC.container = (UIApplication.shared.delegate as? AppDelegate)?.persistentContainer

        ...

}

iOS 앱 개발을 시작하고 튜토리얼을 따랐을 때 확실히 혼란스럽습니다.

좋은 웹페이지 즐겨찾기