SwiftUIでのViewはどういうポジション??
環境
macOS Catalina 10.15.5 Beta(19F53f)
Xcode 11.4.1
現状
自分はSwiftUI
が出る前のSwift4
を以前に学習していました。
それで最近になって再びアプリを作らないといけない状況になり公式のチュートリアルを参考にしてSwiftUI
の勉強また、詰め込めこみきれていないSwift
について勉強しています。
チュートリアルを進め、現在はHanding User Inputに入りました。
@State
? @EnvironmentObject
?
@State
とは? @EnvironmentObject
とは? という前に
Swift
をチュート半端にやっていた自分は@
の意味がわかりませんでした。
なので調べ「プロパティ同士の関係付のための何か」と、なんとも曖昧な結論になりました。
そして改めて@State
や@EnvironmentObject
について調べました。
@State
は「UIの状態をプロパティに紐付けする」
@EnvironmentObject
は「複数のViewでインスタンスを共有する」ものなのだと理解しました。
質問
@EnvironmentObject
の説明で「複数のView
で...」という説明がありましたが、
プログラムはclass単位で作っているものだと思い込んでいた自分からすれば
@EnvironmentObject
の説明はなんとも引っかかります。
swiftUI
においてアプリの構成はViewというものなのですか??
だとしたら確認なのですが
View一つと対応しているのはPreviewProviderを準拠しているstructとということでいいのですか?**
そこのところ質問したいです。
あと
@EnvironmentObject
を追加すると
struct LandmarkList_Previews: PreviewProvider {
static var previews: some View {
LandmarkList()
.environmentObject(UserData())
}
}
のように**.environmentObject()
を追加しているのですがこれは何をやっているんですか?**
あと、あと**@
の理解について、間違っていますか?**
すいません最後に質問をまとめます。
swiftUI
においてアプリの構成はViewというものなのですか??- View一つと対応しているのはPreviewProviderを準拠しているstructとということでいいのですか?**
.environmentObject()
を追加しているのですがこれは何をやっているんですか?-
@
の理解について、間違っていますか?
どの質問もyes/noではなく解説をしていただきたいです。