問題タブ [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.

0 投票する
1 に答える
578 参照

swiftui - SwiftUIは、ビューへの参照のみが与えられたビューのEnvironmentValuesを取得します

私の理解によると、ビューを自分で ( を実装する構造体としてView) 定義すると、次のように var を環境変数として宣言できます。

これにより、フィールドにアクセスできますEnvironmentValues.isEnabled

ただし、これはビュー定義自体の中でのみ可能であるようです。

いくつかのビューが与えられvた場合、そのビューの環境オブジェクトを取得することは可能ですか? または特定の環境値を取得しますか?

0 投票する
0 に答える
394 参照

swiftui - SwiftUI プロジェクトの「未解決の識別子の使用」

最初の SwiftUI プロジェクトを作成しています。プロジェクトに新しいクラス (XML パーサー) を追加するまでは、すべて順調に進んでいました。新しいクラスを呼び出そうとすると、「未解決の識別子の使用」というエラーが表示されます。コンパイラが新しいクラスを認識していないようです。

以下のコードは大幅に簡略化されています。うまくいけば、私はアイデアを理解するのに十分な情報を提供しました:

そしてパーサークラス...

0 投票する
1 に答える
2964 参照

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

0 投票する
1 に答える
101 参照

swift - SwiftUI の「環境依存」の色

Apple のドキュメントでは、「環境に依存するColor」と定義されています。(私のものを強調)

https://developer.apple.com/documentation/swiftui/color

したがって、SwiftUI Color は一定ではなく、Color (sic) の色はその環境に依存すると言うのは正しいですか。

この環境依存の例は何ですか?

0 投票する
1 に答える
428 参照

swiftui - すべての共有データに対して SwiftUI で @EnvironmentObject を使用できますか?

ビューと他のオブジェクト間でデータを共有するための@State@ObservedObjectおよび@EnvironmentObjectバインディングがあります。SwfitUIそれぞれに指定された使用法が@EnvironmentObjectありますが、最も強力で使いやすいようです。では、すべての状態変数と共有データに使用できますか? これには欠点がありますか?