ここで簡単な質問... MVCデザインの観点からは、(キー値観察を使用して)ビューからモデル内の値を観察し、ビューの現在の位置をモデルの変数が変わるとき?KVOとMVC質問
モデルオブジェクト内の位置変数が変更されても、ビューオブジェクトから観察してそのオブジェクトを移動させても問題ありませんか?
ビューとモデルがある意味でコミュニケーションしているので、これはMVCに対してですか?
ここで簡単な質問... MVCデザインの観点からは、(キー値観察を使用して)ビューからモデル内の値を観察し、ビューの現在の位置をモデルの変数が変わるとき?KVOとMVC質問
モデルオブジェクト内の位置変数が変更されても、ビューオブジェクトから観察してそのオブジェクトを移動させても問題ありませんか?
ビューとモデルがある意味でコミュニケーションしているので、これはMVCに対してですか?
C、コントローラ、アイテムにつなぐ必要があります。モデルから状態データを取得してから、コントローラにビューまたはビューを設定させると、コントローラからそのデータが読み込まれることを意味しています。
ビューとモデルは常にコントローラで区切る必要があります。それはAppleによるとMVCだ。その理由は、現在でもモデルの状態をビューの参照で参照できるようにするのは簡単かもしれませんが、モデルは将来変更される可能性があります。ビューを更新するのには時間がかかります影響を受ける。モデルはビューの位置を決して更新するべきではありません。表示の詳細について実際には考えてはいけません。それはコントローラーの仕事で、のコントロールにあなたのビューとモデルデータに基づいてそれらを移動します。
ビューは、物事を表示する方法やユーザーI/Oと対話する方法のみを知っている必要があります。モデルでは、ビジネスロジックについて、入力と出力のインターフェイスで受け取るデータのみを知る必要があります。既存のビューがなくてもモデルを実行できるはずです。代わりに、これらの入力と出力にフィードする単体テスト・タイプのコードを持つことができます。ビューを動かすようなものは、モデルの責任外です。
大丈夫です。私のアプリケーションでは、私はバルーンのMutableArrayを持っています..私は2つの異なるクラスのバルーン(モデル)とBalloonV(ビュー)を持っています..私はコントローラからモデルの変数にKVOを使用する場合、対応するビューでモデルオブジェクトを修正しますか?私は2つの配列を持っています。モデル用とビュー用の2つの配列を持っています。対応するモデル/ビューのペアは対応する配列内で同じインデックスを共有するので、正しいビューを移動でき、モデルの変数が変更されました。 – Dalisto1
@ Dalisto1こんにちは、あなたのBalloonVビューがNSView内に表示されるバルーンの色のために@ "Green"などの入力を取るとしましょう。また、バルーンモデルがバルーンを表す色について@ "グリーン"などを出力するとしましょう。この場合、BalloonVはバルーン変更のキーを観察してはいけません。これを行うには、BalloonControllerを追加する必要があります。利点は、BalloonControllerがモデル上のすべてのバルーンについて知り、すべてのバルーンビューが表示されることです。それは、それが自分自身で計算するか、物理モデルなどから取り出す位置データのように、より多くを知るかもしれません。希望が役立つ – Nektarios