こんにちは。対応するフラグメント と を含む 3 つのアクティビティがA
ありB
ますC
。フラグメントA
は静的フラグメントで、他のフラグメントは動的です。
アクティビティA
は既に fragment のリスナーを実装していますA
。これは、フラグメントを横方向にロードするB
か、単一ペインで新しい画面に移動するために使用されます。
私が欲しいのは、 FragmentB
を呼び出すフラグメントで特定のボタンが押されたときです。横向きのC
フラグメントに置き換えられるか(フラグメントは引き続き存在します)、シングルペインモードで新しい画面が表示されます。アクティビティ Bメソッドにこの単純なコードがあります。C
A
onCreate
if (getResources().getConfiguration().orientation ==
Configuration.ORIENTATION_LANDSCAPE) {
finish();
return;
}
眉をひそめているので、フラグメントからフラグメントへの通信を避けようとしています。これは、アクティビティと の両方でフラグメントのリスナーを実装する必要があることを意味B
しますか? より良い方法はありますか?リスナーをアクティビティに実装し、横向きのときにアクティビティに渡すことだけを考えましたが、上記のコードのために渡す前に終了したと思います。何かご意見は?A
B
A
C
B
B
A