2

私はフラグメントを初めて使用し、アプリにはポートレート モードでオプションのリストを表示する単一フレーム レイアウトが含まれており、ランドスケープでは、左ペインのリスト ビューと右ペインの選択されたオプションの詳細の組み合わせが表示されます。

画面の上部に、ログアウト、ページ タイトルなどの画像を含むヘッダーがあります。

画面の向きを横向きから縦向きに変更すると、常にリスト ビューが表示されますが、横向きモードの画面のヘッダーの詳細が表示されます。

私の質問は、画面の向きが横向きから縦向きに変わるときに、リストフラグメントの代わりに詳細フラグメントを表示するにはどうすればよいですか?

また、次のような java.lang.RuntimeException を取得しました: Your content must have a ListView that id attribute is 'android.R.id.list'. それを取り除くために、ダミーのリストビューを配置し、その可視性をなくなったように設定しました。今は正常に動作していますが、良い習慣ですか? そして、なぜこの例外が発生するのですか?

4

1 に答える 1

0

実装する必要のあるデュアルペインレイアウトたとえば、レイアウトに詳細フラグメントが含まれているかどうかを確認し、含まれている場合はここに詳細を表示します。

   View detailsFrame = getActivity().findViewById(R.id.details);
    mDualPane = detailsFrame != null && detailsFrame.getVisibility() == View.VISIBLE;

詳細記事「アクティビティ内のフラグメントの表示」を参照してください

于 2013-03-01T07:07:32.880 に答える