私にはActivity
と5 Fragment
があります。最初のFragment
のユーザー入力電話番号。最後に(5番目)Fragment
私はこの電話番号を表示し、他のフィールドを入力して、すべてのデータをサーバーに送信する必要があります。それぞれについてFragment
私は別のプレゼンター(MVP)を使用しています。フラグメント間のデータを渡す
最初のフラグメントのデータを最後まで渡す方法はありますか?
1)私は、このデータが必要ないので、すべてのフラグメントチェーンを通過したくありません。
2)このデータをホストActivity
に保存する場合、をFragment
クラス内に呼び出してこのデータをPresenterに渡す必要があります。
3)最後の方法を選択しました。私は、Singleton UserDataクラスを作成しました。これは単純なPOJOクラスです。最初のFragment
にUserData
のインスタンスを作成し、最後のFragment
でそれを使用してデータを検索し、欠落したフィールドを追加します。
しかし、私はシングルトンの正しい解決策でアプローチがわからない。ユーザーが別のActivity
に行くと、シングルトンインスタンスをクリアする必要があるためです。 もっと良い解決策がある場合は?私はEventBusについて考え
EDIT
。しかし、私は断片から発表者にデータを渡さなければなりません。今私はUserData.getInstance()
を現在の内部に呼び出し、データを取得します。コードをよりエレガントにして修正したい。私は経験豊かな開発者の意見を聞きたいと思っています。
'SharedPref'を使用できませんか? –
@RohitAryaこれは、アクティビティ内のデータを保持するよりも優れた解決策だとは思わない。私は長い時間ではなく、サーバーに送るためにこのデータだけを必要とします –
次にシングルトンは良いアプローチになります。 –