初心者プログラミング日記 SwiftUI④ SwiftUIのライフサイクル

WWDC20 Data Essentials in SwiftUIに移る

こんばんはNattsuXです。仕事で落ちているので、こんな時はLet'sプログラミング!

 

developer.apple.com

 

これまでコード模写である程度理解してきましたが、もう少し仕組みの部分を理解したいと

思って再チャレンジしています。

 

下記仮説なので、明日試そうと思います(Xcodeがアップデートして使えない。。。)

前提:下記のような画面表示でボタンを押すと"犬"が"猫"になるアプリがあったとする

 犬

ボタン

 

通常

ビルド(body実行)→View→レンダリング→画面表示(Viewは捨てる)

→画面のボタンをタップ→ボタンは押せるけど猫にならない。(Viewは捨てられている)

 

@State付き

ビルド(body実行)→View→レンダリング→画面表示(Viewは捨てる、

Stateのついたプロパティにはストレージが割り当てられる)

→画面のボタンをタップ(イベント)

→StateのついたプロパティのSource of Truthが変化(犬から猫になる)

→Viewを再構築→Viewからストレージに接続→レンダリング

→犬から猫に変わって画面表示(Viewは捨てる)