6

複数のアクティビティでフラグメントを使用したい。それを使用する最初のアクティビティで、私はそれを作成しました

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

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

4

1 に答える 1

4

ええ、異なるアクティビティで同じフラグメントを使用できます。

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

元 :

アクティビティ A: アクティビティ 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();
于 2017-02-27T12:13:23.050 に答える