2

複数のアクティビティでフラグメントを使用したい。私はそれを使用する最初のアクティビティで は、私は、第二の活性においてandroid - 複数のアクティビティで同じフラグメントを使用する

final ScoreBoard fragment = new ScoreBoard(); 
    getFragmentManager() 
      .beginTransaction() 
      .add(R.id.fragment_container, fragment) 
      .commit(); 

によってそれを作成し、IはのonCreate()メソッドで同じコードを配置しています。 しかし、フラグメントはリセットされたままで、onSavedInstanceState()とonActivityCreated()で保存したにもかかわらず、その値を2番目のアクティビティに保持しません。フラグメントを作り直してリセットしていますか?ありがとうございました。

+0

バンプバンプバンプMP – joshua1991

+0

参照BU [複数のアクティビティで1つのフラグメントを再利用する方法](https://stackoverflow.com/a/46342) 916/3681880) – Suragch

答えて

3

ええ、あなたは異なる活動で同じ断片を使用することができます。

フラグメントを呼び出す必要があるすべてのアクティビティでfragment_containerビューを作成します。その後、フラグメントをそのコンテナに呼び出します。

EX:

アクティビティA:

final ScoreBoard fragment = new ScoreBoard(); 
    getFragmentManager() 
      .beginTransaction() 
      .add(R.id.fragment_container_activityA, fragment) 
      .commit(); 

アクティビティB活性の呼び出す断​​片:アクティビティBで呼び出す断​​片

final ScoreBoard fragment = new ScoreBoard(); 
    getFragmentManager() 
      .beginTransaction() 
      .add(R.id.fragment_container_activityB, fragment) 
      .commit(); 
+0

私は参照してください。したがって、フラグメントコンテナのIDは異なっている必要がありますか? – joshua1991

+0

ええ..各アクティビティには異なるレイアウトが含まれており、各レイアウトには異なるコンテナが含まれている必要があります。そのコンテナビューにフラグメントを呼び出します。 –

関連する問題