2017-05-15 22 views
0

2つの異なるレイアウト(ポートレート用と1つのランドスケープ用)が必要ですが、向きを変更すると、onCreateを繰り返したくありません。onCreateを使用せずに異なる画面の向きで異なるレイアウト

これは可能ですか?

+0

オリエンテーションが変更されたときにアクティビティが再開されるので、変更を処理するか、アクティビティを単一オリエンテーションにすることができます –

+0

以下のReneの提案に加えて、Fragmentモデルの使用を検討することもできます。 –

答えて

0

通常、方向onDestroy()を変更した直後にonCreate()Activityが呼び出されます。 Handling Configuration Changes Yourself

EDIT:あなたはこの回避することができますしかし

あなたはonCreate()で2つのレイアウトを使用し、オリエンテーションに基づくものを選ぶことができます肖像画や風景モードの異なるレイアウトについてを(私はあなたが避けたかった知っていますonCreateメソッドがありますが、それ以外の場合は可能ではないと思います)。現在の方向を確認し、それに応じてthis.getResources().getConfiguration().orientationを実行してください。

多分onCreate()の使用を避けてonConfigでも同じことをすることはできますが、それについてはわかりません。

+0

しかし私は風景のために異なるレイアウトをしたい – Jkrr

+0

ただ私の答えを編集しました。それが役に立てば幸い! –

関連する問題