2016-06-11 3 views
0

私は主なアクティビティーにいくつかの異なるビュー(さまざまな方法でデータを表示)を切り替えるナビゲーション・ドロワーが含まれているAndroidでアプリケーションを作成しています。各ビューはフラグメントです。フラグメントはスタンドアロンであるべきですか?

私の選択アーキテクチャはMVVMのようなものです。私は、特定のビューのロジックを含み、モデルを提供する各アクティビティのビューモデルを持っています。ビューは、モデルを表示し、ユーザーのやりとりを処理するためだけに使用されます。

フラグメントがスタンドアロンオブジェクトであるかどうかは不思議ですね。言い換えれば、それらは、いくつかの視覚的なコントロールからなる複合ビューとしてのみ機能し、主な活動から管理されるべきか?または、彼らは自分自身と全体のロジック上のビューモデルを持っていて、主なアクティビティはそれらの表示と非表示を処理するだけですべきですか?

優れたSRR(そうでなければ、主なアクティビティのビューモデル内のすべてのフラグメントのロジックを実装する必要があります)、より簡単な実装(アクティビティは各フラグメントにモデルを渡す必要はありません。switch彼らはアクティブであるかどうかをチェックする)、再利用性(私は他のフラグメントをすぐ隣に置くことができ、正しく動作します)。私が見た例では、このようなアーキテクチャはあまり見えませんでした。通常、メインアクティビティfindViewByIdはフラグメントを断片化してそこにデータを入れます。

このような問題の一般的な解決方法は何ですか?

+0

私はあなたが何を言ってるのか知っている任意の*サンプルコード*なしで、これはちょっと曖昧で認めるが、私か非常に深刻なdownvoteには少し極端だと思う。 – EpicPandaForce

+0

一般的なアプリケーションのアーキテクチャに関わる問題ではなく、特定の問題ではないので、このような質問にはソースコードを含めるという点はありませんでした。それでも、アレクサンドルは私が何を求めているのか理解していました。私は誰が質問をdownvoted誰かを聞いてうれしいだろう。 – Spook

+0

私はうんざりです、私は投票しました - 私はMVVMに深くないので、例のコードなしでそれを見ることはできませんが、もう一度、それがあります:) – EpicPandaForce

答えて

2

フラグメントは、自分のロジック全体を持っていて、完全にアクティビティに依存しないようにして、他のアクティビティで簡​​単に再利用できるようにする必要があります。

フラグメントを親アクティビティ(コンテナとも呼ばれます)と通信させたい場合は、インタフェースを使用できます。

あなたが唯一のいくつかの情報を探していた場合は、サンプルコードが必要な場合や、教えてください:)

関連する問題