| [[Swift]] | [[Mac]] | [[Xcode]] | [[Swift Sample]] | [[Cocoa]] | [[Xamarin.Mac]] |
{{amazon|B082SMJC7V}}
==データ==
=== データ変更に応じて画面に反映させる ===
* 画面の構造体の中でデータを保持しているクラスのインスタンスを格納するプロパティに、@ObservedObjectプロパティラッパーを付与する
* データを保持しているクラスを、@ObservableObjectプロトコルに準拠させる
* クラスの中で変更を反映させる値を保持しているプロパティに、@Publishedプロパティラッパーを付与する
=== UserDefaults===
----
===View間データ受け渡し===
----
SwiftUIでは親ビューと子ビュー間で値を渡す方法は、下記の3つが挙げられます。
#Environment
##Viewが持つ環境変数。独自の環境変数を定義することができ、それを利用して親ビューから任意の値を渡すことが可能
#EnvironmentObjects
##他の2つに比べて一般的な方法。利用するためには独自のクラスを定義
#Preferences
##Preferenceは子から親へ伝達させる方法
*https://qiita.com/noby111/items/26405bd89075c841029a
====ObservableObject を経由して親子ViewでAlertの表示フラグを共有====
</pre>
==Tips== ===VSCode + Github Copilot で iPhone アプリ開発===*https://www.typea.info/blog/index.php/2024/12/29/vscode_and_github_copilot_dev_iphone_app/==Tips=[https://www.typea.info/blog/index.php/2021/11/30/swift_macos_app_permission/ ファイルパーミッションエラー(App Sandbox)]===
----
=*[https://www.typea.info/blog/index.php/2021/11/30/swift_macos_app_permission/ ファイルパーミッションエラー(App Sandbox)]===[https://www.typea.info/blog/index.php/2021/01/23/swiftui_tips_view_component_locate/ 画面部品の追加方法]====
----
====SwiftUIライブラリ====
----
=====[https://github.com/SwiftUIX/SwiftUIX SwiftUIX]=====
[https://qiita.com/yosshi4486/items/3d92f81feaabc1049b4c SwiftUIアプリケーション開発の不足を補うSwiftUIX]