アプリのデザインとレイアウト

UI コントロールを扱う





訳注:以下、必要な場所においては Mac と iPhone 両方のセクションを提供しています。
Mac → セクション 4、iPhone → セクション 104 とします。






    ProfileHost.swift


  1. import SwiftUI
  2. struct ProfileHost: View {
  3. @Environment(\.editMode) var editMode
  4. @EnvironmentObject var modelData: ModelData
  5. @State private var draftProfile = Profile.default
  6. var body: some View {
  7. VStack(alignment: .leading, spacing: 20) {
  8. HStack {
  9. if editMode?.wrappedValue == .active {
  10. Button("Cancel") {
  11. draftProfile = modelData.profile
  12. editMode?.animation().wrappedValue = .inactive
  13. }
  14. }
  15. Spacer()
  16. EditButton()
  17. }
  18. if editMode?.wrappedValue == .inactive {
  19. ProfileSummary(profile: modelData.profile)
  20. } else {
  21. ProfileEditor(profile: $draftProfile)
  22. }
  23. }
  24. .padding()
  25. }
  26. }
  27. struct ProfileHost_Previews: PreviewProvider {
  28. static var previews: some View {
  29. ProfileHost()
  30. .environmentObject(ModelData())
  31. }
  32. }


プレビュー その 1


    ProfileHost.swift


  1. } else {
  2. ProfileEditor(profile: $draftProfile)
  3. .onAppear {
  4. draftProfile = modelData.profile
  5. }
  6. .onDisappear {
  7. modelData.profile = draftProfile
  8. }
  9. }
  10. }
  11. .padding()




セクション 1セクション 2
セクション 3セクション 4
セクション 101セクション 102
セクション 103セクション 104






目次
Xcode の新機能

フレームワーク

  • SwiftUI

  • ビューの作成と結合

    セクション 1

    セクション 2

    セクション 3

    セクション 4

    セクション 5

    セクション 6


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    セクション 105

    セクション 106

    ビルドリストとナビゲーション

    セクション 1

    セクション 2

    セクション 3

    セクション 4

    セクション 5

    セクション 6

    セクション 7

    セクション 8


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    セクション 105

    セクション 106

    セクション 107

    セクション 108

    ユーザー入力の処理

    セクション 1

    セクション 2

    セクション 3

    セクション 4

    セクション 5

    セクション 6


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    セクション 105

    セクション 106

    パスとシェイプの描画

    セクション 1

    セクション 2

    セクション 3

    セクション 4


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    ビューと移行のアニメーション

    セクション 1

    セクション 2

    セクション 3

    セクション 4

    セクション 5


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    セクション 105

    複雑なインターフェースの構成

    セクション 1

    セクション 2

    セクション 3

    セクション 4

    セクション 5


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    セクション 105

    UI コントロールを扱う

    セクション 1

    セクション 2

    セクション 3

    セクション 4


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    UIKit とのインターフェース

    セクション 1

    セクション 2

    セクション 3

    セクション 4


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    watchOS アプリの作成

    セクション 1

    セクション 2

    セクション 3

    セクション 4

    セクション 5


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    セクション 105

    macOS アプリの作成

    セクション 1

    セクション 2

    セクション 3

    セクション 4

    セクション 5

    セクション 6

    セクション 7


    セクション 101

    セクション 102

    セクション 103

    セクション 104

    セクション 105

    セクション 106

    セクション 107