<SwiftLearn/>
SwiftUI入門 レッスン4

@Binding

親子View間でデータを双方向バインディングする@Bindingの使い方を学びます。

@Bindingとは

@Bindingは子Viewが親Viewの@State値への参照を受け取り、 読み書きできるようにするプロパティラッパーです。 親の$プレフィックスで渡し、子はそれを@Bindingで受け取ります。

  • 親: @State private var value → 子へ $value で渡す
  • 子: @Binding var value で受け取る
  • 子が変更すると親の@Stateも更新される(双方向)
  • 所有権は親にある(子はBindingを所有しない)

@Bindingの基本

親が@Stateを持ち、子へ$で渡します。子が変更すると親にも反映されます。

Swiftエディタ

カスタム入力コンポーネント

@Bindingを使ってTextFieldをラップしたカスタムコンポーネントを作ります。

Swiftエディタ