1

SVG オブジェクトを編集するための MVC アプリケーションを作成しようとしています。、モデルとして、およびビューとしてCircle、などのクラスがあります。RectangleTextCircleViewRectangleViewTextView

MVC の観点から見て、形状の各インスタンス (たとえばCircle) に対してビューのインスタンス ( など) を持つことは正しいCircleViewですか?

つまり、キャンバスに描画された 100 個の図形に対して、100 個の View インスタンスが取得されます。

4

2 に答える 2

1

MVCの概念を誤解していると思います。通常、ビューはシェイプではなくキャンバスです。シェイプはモデルの一部であり、XXXView クラスは存在しないはずです。

于 2012-11-02T10:47:50.897 に答える
0

あなたの場合、Modelはグラフィック要素のセットとして理解できます。

、などのすべてのグラフィック要素はCircle、何らかのインターフェイス (たとえば) を実装する必要があります。そして、これらのメソッドを使用する 1 つのクラス。RectangleTextGraphicalElementView

あなたの場合GraphicalElement、メソッドとのインターフェースを導入できます

interface GraphicalElement {
    void draw(Graphich g);
}

そして、それらを表示するためViewにすべての s を繰り返し処理します GraphicalElement

for (GraphicalElement ge : setOfElements) {
     ge.draw(graphics);
}
于 2012-11-02T10:44:41.630 に答える