2016-09-27 8 views
-1

アクティビティAがあります。そのアクティビティの中に、F1と呼ばれるフラグメントが1つあり、そのフラグメントの中に別のフラグメントF2があります。 F2から私はstartActivityForResult(/ アクティビティB /)を呼び出し、アクティビティの終了時にフラグメントF2のonActivityResult()が呼び出されていますが、F1でも同じことが起こりたいと思います。 私が欲しいのは、フラグメントF1は、アクティビティBが終了したというイベントを取得する必要があります。 これについての助けに感謝します。アクティビティの結果をフラグメントに送信する方法

+0

コールバックメソッドでは、フラグメントF1の別のメソッドを呼び出すことができます –

+0

オブジェクトを作成し、別のフラグメントのメソッドを直接呼び出すことはお勧めしません。 – Jagadeesh

+1

はい、私は知っている、あなたはそのためのインターフェイスを使用することができます –

答えて

0

こんにちはあなただけのフラグメントのonActivityResult()メソッドへの呼び出しを行う活動の

onActivityResult() Method. 

における現在のフラグメントのフォームフラグメントマネージャを取得する必要があります。

CustomFragment fragment = (CustomFragment) getFragmentManager().findFragmentByTag(getFragmentManager().getLastBackStackEntry()); 
fragment.onActivityResult(); 

この手法を使用できます。

0

あなたの電話番号F2StartActivityForResultです。結果がF2に戻らないようにするためには、そのメソッドをフラグメントF1で呼び出す必要があります。

あなたが実際に行っていることを見るためには、いくつかのコードを見ていただければ幸いです。

0

あなたの質問から、F2はF1の子フラグメントだと思われます。

ので、あなたは以下のようにフラグメントF2からstartActivityForResultメソッドを呼び出すことができる場合:

getParentFragment().startActivityForResult(intent, requestCode); 

さて、あなたは第二の活動を終了しますと、それは自動的すなわちフラグメントF1(親フラグメントのonActivityResult()メソッドを呼び出します)。

関連する問題