2017-12-05 9 views
0

私は自分のアプリケーションをリファクタリングしていますが、現在2つのアクティビティを同じアクティビティで2つのフラグメントとして書き換えています。これは、私は2番目の活動への最初のアクティビティからgson JsonObjectを送信するために使用される方法だった:同じアクティビティのフラグメント間でgson JsonObjectを渡す方法

Activity1:

Intent intent = new Intent(this, Activity2.class); 
intent.putExtra("form", gson.toJson(form)); 
startActivity(intent); 

Activity2:

intent = getIntent(); 
form = gson.fromJson(intent.getStringExtra("form"), JsonObject.class); 

今、私はActivity1Activity2などを書き換えたことフラグメント内のデータを送信および取得するために使用できる同様のアプローチはありますか?私はインテントを非常に直感的に使っているだけですが、フラグメントは、互いに通信する別の方法を使用していると考えました。

+0

あなたは活動の間でデータを渡したいん - >フラグメントまたはフラグメント - >フラグメント? – diegoveloper

答えて

1
Bundle args = new Bundle(); 
args.putString("form", gson.toJson(form)); 
secondFragment.setArguments(args); 

とあなたの目標断片で:

getArguments().getString("form"); 
+0

この文 'getArguments()。getString(" form ")は自動的にgsonオブジェクトを取得しますか? – Bargain23

+1

いいえ、Gsonクラスを使用してオブジェクトに変換する必要があります – diegoveloper

関連する問題