【SwiftUI】SwiftUI에서 AppDelegate의 처리를 구현하는 방법

2973 단어 SwiftUI
SwiftUI에서 앱을 만들 때 시작시 처리를 구현할 필요가 태어났습니다.

생성된 파일 정보



Xcode 12에서 새 프로젝트를 만들 때 AppDelegate라는 항목이 추가되었습니다.


이것을 Lifecycle로 하는 것으로 지금까지 대로 UIKit App Delegate 등이 작성됩니다.
반면에 AppDelegate를 선택하면 <프로젝트 이름> App.swift 파일이 생성됩니다.
이번에는 후자의 SwiftUI App에서 AppDelegate를 구현하는 방법에 대해 설명합니다.

SwiftUI App에서 시작시 처리를 구현하는 방법


<プロジェクト名>App.swiftファイル를 사용하면 기존 AppDelegate를 활용할 수 있습니다.

import SwiftUI

@main
struct SwiftUIAppSample: App {
    // swiftlint:disable weak_delegate
    @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate  // 追加する
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

// 以下を追加する
class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
        return true
    }
    // 必要に応じて処理を追加
}
@UIApplicationDelegateAdaptor보다 코드 설명을 줄여 구현할 수 있습니다.

이상이 SwiftUI에서 AppDelegate를 구현하는 절차입니다.

좋은 웹페이지 즐겨찾기