😀

【SwiftUI】@State を 単方向に流す ということ

2024/06/11に公開

SwiftUI での基本的なこれ。

sc 2024-06-11 at 16.50.30.png

@State var text = ""

TextField("text", text: $text)

一方、Android JetpackCompose では、単方向にデータを流します。

「View では複雑なことをせず、受け取った値を表示して終わり」

という これが JetpackCompose のポリシーの中心となっています。

https://developer.android.com/develop/ui/compose/architecture

というかんじで、単方向に流す。

sc 2024-06-11 at 16.51.13.png

var stateHolder = StateHolder()

TextField("text", text: Binding(
  get: { stateHolder.text },
  set: { newValue in stateHolder.text = newValue })
)

みんなはどう思いますか。

どちらが、作りやすくて、運用や改修をしやすいですか。

🧑🏻‍💻 引用

https://android.benigumo.com/20240407/binding-1/

Discussion