リストナビゲーションモードを使用してナビゲーションを実装しています。現在、私は3つのまったく異なる無関係のリストビューを持っており、ナビゲーションメニュースピナーから必要なアイテムをタップすることで切り替えることができます。fragmentManager.replace()
これらのリストビューは、ユーザーがナビゲーションメニューからアイテムを選択するたびに切り替わるフラグメントとして実装されます。
今は動作し、すべてが完璧でした...通常のマルチスクリーンデバイスのサポートが必要になるまで。
私が理解しているように、マルチスクリーンサポートの重要なポイントは、異なる画面サイズに対して別々のレイアウトを持つことです。ただし、この場合、フラグメントをフラグメントコンテナにネストする必要があるため、このレイアウトをフラグメントで使用することはできません。しかし、ネストされたフラグメントは、しばらく前はサポートされていませんでした。
より明確にするために、以下のスキーマを見てください。
MainActivity -> FragmentA -> ListView
-> FragmentB -> ListView
-> FragmentC -> ListView
画面サイズに応じたレイアウトのFragmentAコンテナを作成する場合は、元のFragmentAをこのコンテナにネストする必要があります。
タブレットの場合:
MainActivity -> FragmentContainer (also Fragment) -> FragmentA
-> DetailsFragment
電話の場合:
MainActivity -> FragmentContainer -> FragmentA
既存のすべてのフラグメントを個別のアクティビティにラップし、代わりにそれらのアクティビティを切り替える必要がありますか?または、ネストされたフラグメントをサポートする新しいAndroidサポートライブラリを使用する必要がありますか?
あなたはどう思いますか?
助けてくれてありがとう。
同様の質問: フラグメントタブとフラグメントアクティビティ