問題タブ [swiftui-environment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swiftui - SwiftUIは、ビューへの参照のみが与えられたビューのEnvironmentValuesを取得します
私の理解によると、ビューを自分で ( を実装する構造体としてView
) 定義すると、次のように var を環境変数として宣言できます。
これにより、フィールドにアクセスできますEnvironmentValues.isEnabled
。
ただし、これはビュー定義自体の中でのみ可能であるようです。
いくつかのビューが与えられv
た場合、そのビューの環境オブジェクトを取得することは可能ですか? または特定の環境値を取得しますか?
swiftui - SwiftUI プロジェクトの「未解決の識別子の使用」
最初の SwiftUI プロジェクトを作成しています。プロジェクトに新しいクラス (XML パーサー) を追加するまでは、すべて順調に進んでいました。新しいクラスを呼び出そうとすると、「未解決の識別子の使用」というエラーが表示されます。コンパイラが新しいクラスを認識していないようです。
以下のコードは大幅に簡略化されています。うまくいけば、私はアイデアを理解するのに十分な情報を提供しました:
そしてパーサークラス...
binding - 複数のクラス間でデータを渡すSwiftUI
Apple の SwiftUI ドキュメント、Web、およびスタック オーバーフローを精査した後、複数のクラスを使用し、それらの間で EnviromentObject データを渡す方法を理解できないようです。SwiftUI の EnvironmentObject、ObservableObjects、Bindings に関するすべての記事は、モデルからビューにデータを渡す方法を示していますが、あるモデルから別のモデルにはどうすればよいでしょうか。それとも、これについて完全に間違った方法で考えていますか。
クラス A からクラス B に @Published var を渡すにはどうすればよいですか?
この単純な SwiftUI サンプル アプリでは、 @Published データを Settings クラスから NetworkManager クラスに渡そうとしています。このアプリには、ユーザー名とパスワード用の 2 つのフォーム フィールドを持つ単一の ContentView があり、ボタンを押すと API に接続して結果を表示します。
以下のコードは、NetworkManager の mockService 関数が「設定」とは何かを認識していないため、クラッシュします。ビューで「設定」によって観察された EnvironmentObject を読み取ることができますが、別のクラスでそのデータを取得するにはどうすればよいですか? ここでバインディングと関係があると推測していますが、どうすればよいかわかりません。
シーンデリゲート:
ContentView.swift
swift - SwiftUI の「環境依存」の色
Apple のドキュメントでは、「環境に依存する色Color
」と定義されています。(私のものを強調)
https://developer.apple.com/documentation/swiftui/color
したがって、SwiftUI Color は一定ではなく、Color (sic) の色はその環境に依存すると言うのは正しいですか。
この環境依存の例は何ですか?
swiftui - すべての共有データに対して SwiftUI で @EnvironmentObject を使用できますか?
ビューと他のオブジェクト間でデータを共有するための@State
、@ObservedObject
および@EnvironmentObject
バインディングがあります。SwfitUI
それぞれに指定された使用法が@EnvironmentObject
ありますが、最も強力で使いやすいようです。では、すべての状態変数と共有データに使用できますか? これには欠点がありますか?