私は複雑なiPadアプリケーションを構築しています。それをスクラップブックと考えてください。 この質問の目的のために、その上に2つの画像があるページを考えてみましょう。
メインビューには、私のドキュメントデータが単一のUIImageとして表示されます。これは私がそれらに対していくつかのグローバルな操作を行う必要があるためです。これは私のDisplayView
です。
編集時私はEditorView
を、2つの画像をサブビューとしてインスタンス化する必要があります。この方法で、私は単一の画像とやりとりすることができます(回転、スケール、移動)。編集がトリガーされると、私はDisplayView
を隠し、EditorView
を表示します。複雑なiPadアプリのMVCデザインパターン:1つの太ったコントローラが受け入れられますか?
iPhoneアプリケーションでは、各メインビュー(つまり、画面に表示されるビュー)をView Controllerに関連付けます。
ここに問題があるのは、ただ1つのView Controllerだけです。私はEditorView
をモーダルビューコントローラで渡すことを検討しましたが、オプションではありません(マスクとすべてのパレットをカバーする複雑なレイアウトがあり、EditorView
の再構築で重複したコードが作成されます)。
現在、EditorView
にはロジックが組み込まれています(モデルからデータをロードし、細かい編集のためにいくつかのサブビューを呼び出し、モデルにデータを戻します)。 EditorView
サブビューにもロジックが組み込まれています(画像を操作してメインEditorView
に戻します)。私はこの論理がコントローラにもっと属していると感じています。一方、私の唯一のビューコントローラをとてもすごくいいアイデアにしているのかどうかはわかりません。
このようなクラス構造の中で、最高のココアアイシー実装は何ですか?
説明を求めても構いません。
乾杯。
カテゴリのヒントは理にかなっています。私はそれが私がやることだと思う、コントローラ内のすべてのロジックを入れ、パレット、エディタなどのためのいくつかのカテゴリを取り除く – nutsmuggler