Protocol

App

A type that represents the structure and behavior of an app. ある型、それはあるアプリの構造と挙動を表すものです。

Declaration 宣言

protocol App

Overview 概要

Create an app by declaring a structure that conforms to the App protocol. Implement the required body computed property to define the app’s content: あるアプリをAppプロトコルに準拠するある構造体を宣言することによって作成してください。必須body計算プロパティを実装することで、アプリの内容を定義してください:


@main
struct MyApp: App {
    var body: some Scene {
        WindowGroup {
            Text("Hello, world!")
        }
    }
}

Precede the structure’s declaration with the @main attribute to indicate that your custom App protocol conformer provides the entry point into your app. The protocol provides a default implementation of the main() method that the system calls to launch your app. You can have exactly one entry point among all of your app’s files. 構造体の宣言の前に@main属性を置くことで、あなたのあつらえのAppプロトコル準拠物があなたのアプリへのエントリポイントを提供することを指し示してください。プロトコルは、main()メソッドの省略時の実装を提供します、それはシステムが呼び出してあなたのアプリを起動するものです。あなたは、きっかり1つのエントリポイントをあなたのアプリのもつファイルの全ての間で持つことができます。

Compose the app’s body from instances that conform to the Scene protocol. Each scene contains the root view of a view hierarchy and has a life cycle managed by the system. SwiftUI provides some concrete scene types to handle common scenarios, like for displaying documents or settings. You can also create custom scenes. アプリのもつ本体をSceneプロトコルに準拠するインスタンスそれらから構成してください。各シーンは、あるビュー階層のルートビューを含みます、そしてシステムによって管理されるあるライフサイクルを持ちます。SwiftUIは、いつかの具象シーン型を提供して、書類や設定の表示のためなどの通常予想される事態を取り扱います。あなたはまた、あつらえのシーンを作成できます。


@main
struct Mail: App {
    var body: some Scene {
        WindowGroup {
            MailViewer()
        }
        Settings {
            SettingsView()
        }
    }
}

You can declare state in your app to share across all of its scenes. For example, you can use the StateObject attribute to initialize a data model, and then provide that model on a view input as an ObservedObject or through the environment as an EnvironmentObject to scenes in the app: あなたは、あなたのアプリにおいて状態を宣言して、それのシーンの全てにわたって共有できます。例えば、あなたはStateObject属性を使ってあるデータモデルを初期化して、それからそのモデルをあるビュー入力上でObservedObjectとしてまたは環境を通じてEnvironmentObjectとしてあなたのアプリ中のシーンそれらへと提供できます。


@main
struct Mail: App {
    @StateObject private var model = MailModel()


    var body: some Scene {
        WindowGroup {
            MailViewer()
                .environmentObject(model) // Passed through the environment.
        }
        Settings {
            SettingsView(model: model) // Passed as an observed object.
        }
    }
}

Topics 話題

Implementing an App アプリを実装する

Running an App アプリを実行する